NPC de carregamento da Firewalker Boots para OTs 8.50
Créditos:
99% para quem fez
1% para mim por estar postando aqui no XTibia.
Primeiro crie em data/npc/ um arquivo chamado Firewalker.xml e cole isso:
<?xml version="1.0" encoding="UTF-8"?>
<npc name="Firewalker" script="data/npc/scripts/firewalker.lua" access="3" lookdir="3" walkinterval="2000" floorchange="0">
<health now="100" max="100"/>
<look type="128" head="40" body="37" legs="116" feet="95" addons="0"/>
<parameters>
<parameter key="message_greet" value="Ola, |PLAYERNAME|. Voce vai querer {reparar} sua firewalker boots?."/>
<parameter key="message_farewell" value="Isto eh musica para meus ouvidos." />
<parameter key="message_walkaway" value="Yeah, se perca." />
<parameter key="message_onsendtrade" value="Yeah, compre algo." />
<parameter key="module_shop" value="1" />
</parameters>
</npc>
Depois em data/npc/scripts crie um arquivo chamado Firewalker.lua e cole isso:
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, 'reparar') or msgcontains(msg, 'firewalker boots')) then
selfSay('Voce deseja reparar sua worn firewalker boots por 30000 moedas de ouro?', cid)
talkState[talkUser] = 1
elseif(msgcontains(msg, 'yes') and talkState[talkUser] == 1) then
if(getPlayerItemCount(cid, 9934) >= 1) then
if(doPlayerRemoveMoney(cid, 30000) == TRUE) then
doPlayerRemoveItem(cid, 9934, 1)
doPlayerAddItem(cid, 9933)
selfSay('Here you are.', cid)
else
selfSay('Desculpe, volte quando tiver dinheiro.', cid)
end
else
selfSay('desculpe, voce nao tem este item.', cid)
end
talkState[talkUser] = 0
elseif(msgcontains(msg, 'no') and isInArray({1}, talkState[talkUser]) == TRUE) then
talkState[talkUser] = 0
selfSay('Ok then.', cid)
end
return true
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())
Pronto seu NPC ja esta criado, para usalo é o mesmo procedimento que o do carregamento da Soft Boots mais custa 30k.
Kominara,
Gratz...