Ir para conteúdo

Npc


joadson

Posts Recomendados

quero um NPC pra um evento de natal atrasado *-*

ele vai falar assim "Olá nome, o natal chegou! e Papai noel resolveu presentea-lo com seu Gorro.

*diga 'quest' para saber o que voce precisa ter para ganhar.

*dai ele vai pedir 30 presentes (ID 1900)

*e 10 Bags Azul (ID 1995)

 

ele so vai dar o item 7967 se o player tiver todos os items que ele pedir

 

Muito Obrigado a todos que ajudaram/tentaram

 

ngm pode ajudar?

Link para o comentário
Compartilhar em outros sites

NOME DO SEU NPC.XML

<?xml version="1.0"?>
<npc name="NOME DO SEU NPC" script="data/npc/scripts/presente_natal.lua" walkinterval="5000" floorchange="0">
<health now="100" max="100"/>
<look type="134" head="78" body="88" legs="0" feet="88" addons="3"/>
<parameters>
<parameter key="message_greet" value="Ola |PLAYERNAME|. o natal chegou! e Papai noel resolveu presentea-lo com seu Gorro diga {quest} para saber mais." />
</parameters>
</npc>

 

NPC/Scripts crie um arquivo.lua e renomeie para:

 

presente_natal.lua

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



if (msgcontains(msg, 'quest') or msgcontains(msg, 'QUEST')) then
selfSay('Você quer trocar 30 '..getItemNameById(1900)..' e 10 '..getItemNameById(1995)..' por um '..getItemNameById(7967)..'? {yes} ', cid)
talkState[talkUser] = 1
elseif (msgcontains(msg, 'yes') and talkState[talkUser] == 1) then
if Remover(cid) then 
doPlayerAddItem(cid,7967,1) 
selfSay("Obrigado tome seu item!",cid)
talkState[talkUser] = 0 
else 
selfSay("Desculpe,mais você não tem os itens que eu pedi!",cid)
talkState[talkUser] = 0 
end 
elseif msg == "no" and talkState[talkUser] >= 1 then
selfSay("Then not", cid)
talkState[talkUser] = 0
npcHandler:releaseFocus(cid)
end
return TRUE
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())
function Remover(cid) 
if doPlayerRemoveItem(cid,1900,30) then 
       if doPlayerRemoveItem(cid,1995,10) then 
               return TRUE 
       else 
               doPlayerAddItem(cid,1900,30) 
       end
end
end

Editado por Vodkart
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...