MUTANO
New Member
Hello everyone.
I did notice that an NPC Soft Boots, and exchange Soul orb more 5000 gps for 10 infernal bolts.
But only worked part where he repairs the Soft Boots.
Because the exchange of Soul Orb plus gps by infernal bolts did not work.
Infernal Bolt to say, he simply does not answer anything.
I wanted someone there, help me to agree that in NPC.
Script:
Thanks 
I did notice that an NPC Soft Boots, and exchange Soul orb more 5000 gps for 10 infernal bolts.
But only worked part where he repairs the Soft Boots.
Because the exchange of Soul Orb plus gps by infernal bolts did not work.
Infernal Bolt to say, he simply does not answer anything.
I wanted someone there, help me to agree that in NPC.
Script:
PHP:
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, 'soft boots')) then
selfSay('Do you want to repair your worn soft boots for 10000 gold coins?', cid)
talkState[talkUser] = 1
elseif(msgcontains(msg, 'yes') and talkState[talkUser] == 1) then
if(getPlayerItemCount(cid, 6530) >= 1) then
if(doPlayerRemoveMoney(cid, 10000) == TRUE) then
local item = getPlayerItemById(cid, TRUE, 6530)
doTransformItem(item.uid, 2640)
selfSay('Here you are.', cid)
else
selfSay('Sorry, you don\'t have enough gold.', cid)
end
else
selfSay('Sorry, you don\'t have the item.', cid)
end
talkState[talkUser] = 0
if(msgcontains(msg, 'infernal bolt')) then
selfSay('Want to change a Soul Orb and 5000 gold coins by 10 Infernal Bolts?', cid)
talkState[talkUser] = 1
elseif(msgcontains(msg, 'yes') and talkState[talkUser] == 1) then
if(getPlayerItemCount(cid, 5944) >= 1) then
if(doPlayerRemoveMoney(cid, 5000) == TRUE) then
local item = getPlayerItemById(cid, TRUE, 5944)
doTransformItem(item.uid, 6529, 10)
selfSay('Here you are.', cid)
else
selfSay('Sorry, you don\'t have enough gold.', cid)
end
else
selfSay('Sorry, you don\'t have the 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
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())