Ir para conteúdo

Npc Q Entrega Spell


leonvenigor

Posts Recomendados

ola gostaria de um npc tipo assim:

vc fala com ele e ele pede um item pra vc, ai vc entrega o item e ele te da 1 spell

mais no caso um cara de vocation 1 ganha um tipo de spell, e vocation 2 ganha outro tipo de spell

quem me fazer isso dou rep+ a semana toda :D

Link para o comentário
Compartilhar em outros sites


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(not npcHandler:isFocused(cid)) then 
return false 
end 
local talkUser = NPCHANDLER_CONVbehavior == CONVERSATION_DEFAULT and 0 or cid

local itemid = 9020
local t = {
     ["light healing"] = {price = 15,vocations = {1,2,3,4},level = 9},
     ["find person"] = {price = 25,vocations = {3,4},level = 8},
     ["light magic missile"] = {price =30,vocations = {1,5,4,7,8},level = 15},
     ["energy strike"] = {price = 20,vocations = {1,2,5,6},level = 12},
     ["flame strike"] = {price = 100,vocations = {1,2,5,6},level = 12}
     }

if (msgcontains(msg, 'SPELLS') or msgcontains(msg, 'spells'))then
local str = ""
str = str .. "Eu vendo estas Magias: "
for name, pos in pairs(t) do
str = str.." {"..name.."} por "..pos.price.." iten(s)/"
end
str = str .. "." 
npcHandler:say(str, cid)
local msg = string.lower(msg)
elseif t[msg] then
       if not getPlayerLearnedInstantSpell(cid, msg) then
       if getPlayerLevel(cid) >= t[msg].level then
       if isInArray(t[msg].vocations, getPlayerVocation(cid)) then
       if doPlayerRemoveItem(cid,itemid,t[msg].price) then
           doPlayerLearnInstantSpell(cid, msg)
           npcHandler:say("Você aprendeu uma nova magia chamada ".. msg .."!", cid)
       else
           npcHandler:say("você precisa de "..t[msg].price.." ".. getItemNameById(itemid), cid)
       end
       else
           npcHandler:say("você não tem a vocação para comprar está spell.", cid)
       end
       else
           npcHandler:say("você precisa ter level "..t[msg].level.." ou mais para comprar essa magia.", cid)
       end
       else
           npcHandler:say("você já aprendeu essa magia.", cid)
       end

end 
return TRUE 
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) 
npcHandler:addModule(FocusModule:new())

 

local itemid = 9020 -- id do item que ele vai precisar ter

Link para o comentário
Compartilhar em outros sites

  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...