leonvenigor 0 Postado Abril 13, 2012 Share Postado Abril 13, 2012 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 Link para o comentário Compartilhar em outros sites More sharing options...
Vodkart 1515 Postado Abril 13, 2012 Share Postado Abril 13, 2012 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 More sharing options...
Posts Recomendados