Ir para conteúdo

Posts Recomendados

Postado
Agora, Gustavo Ntos disse:

Se a Script funcionou marque como melhor resposta// Você quer como?? perder todos items e volta pro level 1? não entendi esse zerar a vocação

 

Tipo minha vocação é 1 quero quando eu morre ela ir para 0 e ficar level 8 novamente.

e tbm sera se tem como coloca no npc que a classe mago so poderia pega a vocação Mago master, porque se nao o player que cria um arqueiro ele vai poder pega classe mago master.

fica estranho assim.  (Mais preciso muito do pedido acima se vc puder me ajuda agradeço muito.)

Postado
46 minutos atrás, druste disse:

 

Tipo minha vocação é 1 quero quando eu morre ela ir para 0 e ficar level 8 novamente.

e tbm sera se tem como coloca no npc que a classe mago so poderia pega a vocação Mago master, porque se nao o player que cria um arqueiro ele vai poder pega classe mago master.

fica estranho assim.  (Mais preciso muito do pedido acima se vc puder me ajuda agradeço muito.)

local item=2160 --ID do item necessario para trocar de vocaçao
local newVoc=5 --ID da vocation
local outfit=13 --LookType do outfit da vocation
---LINHA ADICINADA BY : GUSTAVO NTOS---
local level= 200 --Level pra pegar a vocaçãao

local mago= x  ---- id da vocação mago
---LINHA ADICINADA BY : GUSTAVO NTOS---
local stor = 437369  -- Storage pode ser qualquer numero, desde que não exista no servidor.
local keywordHandler = KeywordHandler:new()
local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)
local talkState = {}
 
function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end
function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end
function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end
function onThink()                  npcHandler:onThink()                  end
 
function creatureSayCallback(cid, type, msg)
if msgcontains(msg, 'yes') then

    if(doPlayerRemoveItem(cid, item, 1) == true) then

if(getPlayerVocation(cid) == mago) then
   if getPlayerLevel(cid) >= level then
        if getPlayerStorageValue(cid, stor) < 1 then
        doPlayerSetVocation(cid, newVoc)
        setPlayerStorageValue(cid, stor, 1)
        doCreatureChangeOutfit(cid, {lookType=outfit})
        else
        selfSay("Voce ja se Transformou em Mago Master.", cid)
        end
    else
    selfSay('Para virar um Mago master voce precisa do level '..level..'. ', cid)
    end

    else
    selfSay('Voce precisar ser uma mago para avançar de classe. ', cid)
    end


    else
    selfSay("Voce nao tem o item necessario para se transformar em Mago Master. Volte aqui quando tiver ele.", cid)
    end
end
return true
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

 

 

 

function onPrepareDeath(cid, lastHitKiller, mostDamageKiller)
local antes=1 -----vocação antes de morrer
local apos=0 ----- vocação apos a morte
if isPlayer(cid) == true then
if(getPlayerVocation(cid) == antes) then
doPlayerSetVocation(cid, apos)
end
end

 

 

 

creaturescripts.xml:
 <event type="preparedeath" name="mortevocacao" event="script" value="nomedoarquivo.lua"/>

 

 

Se não pega faça isso: adiciona no login.lua

 

registerCreatureEvent(cid, "mortevocacao")

 

Postado
5 horas atrás, Gustavo Ntos disse:

local item=2160 --ID do item necessario para trocar de vocaçao
local newVoc=5 --ID da vocation
local outfit=13 --LookType do outfit da vocation
---LINHA ADICINADA BY : GUSTAVO NTOS---
local level= 200 --Level pra pegar a vocaçãao

local mago= x  ---- id da vocação mago
---LINHA ADICINADA BY : GUSTAVO NTOS---
local stor = 437369  -- Storage pode ser qualquer numero, desde que não exista no servidor.
local keywordHandler = KeywordHandler:new()
local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)
local talkState = {}
 
function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end
function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end
function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end
function onThink()                  npcHandler:onThink()                  end
 
function creatureSayCallback(cid, type, msg)
if msgcontains(msg, 'yes') then

    if(doPlayerRemoveItem(cid, item, 1) == true) then

if(getPlayerVocation(cid) == mago) then
   if getPlayerLevel(cid) >= level then
        if getPlayerStorageValue(cid, stor) < 1 then
        doPlayerSetVocation(cid, newVoc)
        setPlayerStorageValue(cid, stor, 1)
        doCreatureChangeOutfit(cid, {lookType=outfit})
        else
        selfSay("Voce ja se Transformou em Mago Master.", cid)
        end
    else
    selfSay('Para virar um Mago master voce precisa do level '..level..'. ', cid)
    end

    else
    selfSay('Voce precisar ser uma mago para avançar de classe. ', cid)
    end


    else
    selfSay("Voce nao tem o item necessario para se transformar em Mago Master. Volte aqui quando tiver ele.", cid)
    end
end
return true
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

 

 

 

function onPrepareDeath(cid, lastHitKiller, mostDamageKiller)
local antes=1 -----vocação antes de morrer
local apos=0 ----- vocação apos a morte
if isPlayer(cid) == true then
if(getPlayerVocation(cid) == antes) then
doPlayerSetVocation(cid, apos)
end
end

 

 

 

creaturescripts.xml:
 <event type="preparedeath" name="mortevocacao" event="script" value="nomedoarquivo.lua"/>

 

 

Se não pega faça isso: adiciona no login.lua

 

registerCreatureEvent(cid, "mortevocacao")

 

Deu tudo certo no NPC so falta agora na parte da morte do player pelo que eu entendi voce coloco que o player precisa ser da vocação 1 para quando ele morre ficar zero e a vocações em diante, deu erro segue em anexo o erro que esta ocorrendo.

erro.png

Postado
21 minutos atrás, druste disse:

Deu tudo certo no NPC so falta agora na parte da morte do player pelo que eu entendi voce coloco que o player precisa ser da vocação 1 para quando ele morre ficar zero e a vocações em diante, deu erro segue em anexo o erro que esta ocorrendo.

erro.png


Testei a script aqui , o erro é seu  na hora de colocá-la na script .

Copie o código do jeito certo cara , se não vai da erro mesmo . 

 

Postado
5 minutos atrás, PedroSTT disse:


Testei a script aqui , o erro é seu  na hora de colocá-la na script .

Copie o código do jeito certo cara , se não vai da erro mesmo . 

 

Foi isso que Coloquei  , Mais estou com uma duvida meu ot vai ter varias classe pelo que entendi eu preciso ser vocação 1 para quando eu morre ela voltar para zero?

function onPrepareDeath(cid, lastHitKiller, mostDamageKiller)
local antes=1 -----vocação antes de morrer
local apos=0 ----- vocação apos a morte
if isPlayer(cid) == true then
if(getPlayerVocation(cid) == antes) then
doPlayerSetVocation(cid, apos)
end
end

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo