Dartanio
New Member
- Joined
- Jan 1, 2010
- Messages
- 100
- Reaction score
- 0
Nie mogę ogarnąć First beggar addon (second idzie jak należy), męczę to już 3h i nic :/
proszę o pomoc.
proszę o pomoc.
Code:
[10/02/2010 19:43:19]10/02/2010 19:43:19] Lua Script Error: [Npc interface]
[10/02/2010 19:43:19] data/npc/scripts/addons/beggar.lua:onCreatureSay
data/npc/scripts/addons/beggar.lua:29: attempt to compare number with nil
[10/02/2010 19:43:19] stack traceback:
[10/02/2010 19:43:19] data/npc/scripts/addons/beggar.lua:29: in function 'callback'
[10/02/2010 19:43:19] data/npc/lib/npcsystem/keywordhandler.lua:40: in function 'processMessage'
[10/02/2010 19:43:19] data/npc/lib/npcsystem/keywordhandler.lua:168: in function 'processNodeMessage'
[10/02/2010 19:43:19] data/npc/lib/npcsystem/keywordhandler.lua:122: in function 'processMessage'
[10/02/2010 19:43:19] data/npc/lib/npcsystem/npchandler.lua:380: in function 'onCreatureSay'
[10/02/2010 19:43:19] data/npc/scripts/addons/beggar.lua:7: in function <data/npc/scripts/addons/beggar.lua:7>
Code:
local keywordHandler = KeywordHandler:new()
local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)
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
-- Storage IDs --
local beggar = 22027
local newaddon = 'Here you are, enjoy your brand new addon!'
local noitems = 'You do not have all the required items.'
local noitems2 = 'You do not have all the required items or you do not have the first addon, which by the way, is a requirement for this addon.'
local already = 'It seems you already have this addon, don\'t you try to mock me son!'
-- BEGGAR START --
function BeggarFirst(cid, message, keywords, parameters, node)
if(not npcHandler:isFocused(cid)) then
return false
end
if isPremium(cid) then
addon = getPlayerStorageValue(cid,beggar)
if addon == -1 then
if getPlayerItemCount(cid,5883) >= 100 and money >= 20000 then
if doPlayerRemoveItem(cid,5883,100) and doPlayerRemoveMoney(cid,20000) then
selfSay(newaddon)
doSendMagicEffect(getCreaturePosition(cid), 13)
doPlayerAddOutfit(cid, 153, 1)
doPlayerAddOutfit(cid, 157, 1)
setPlayerStorageValue(cid,beggar,1)
end
else
selfSay(noitems)
end
else
selfSay(already)
end
end
end
function BeggarSecond(cid, message, keywords, parameters, node)
if(not npcHandler:isFocused(cid)) then
return false
end
if isPremium(cid) then
addon = getPlayerStorageValue(cid,beggar+1)
if addon == -1 then
if getPlayerItemCount(cid,6107) >= 1 then
if doPlayerRemoveItem(cid,6107,1) then
selfSay(newaddon)
doSendMagicEffect(getCreaturePosition(cid), 13)
doPlayerAddOutfit(cid, 153, 2)
doPlayerAddOutfit(cid, 157, 2)
setPlayerStorageValue(cid,beggar+1,1)
end
else
selfSay(noitems)
end
else
selfSay(already)
end
end
end
-- BEGGAR END --
keywordHandler:addKeyword({'addons'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = "I can offer you first & second addons of the Beggar outfit."})
keywordHandler:addKeyword({'help'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = "What you do is that you type 'first beggar addon' or 'second beggar addon'. Assuming that you already collected all the required pieces, say 'yes' and voíla - you got yourself an addon!"})
local node1 = keywordHandler:addKeyword({'first beggar addon'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'To achieve the first beggar addon you need to give me 100 ape furs and 20,000 gold pieces. Do you have them with you?'})
node1:addChildKeyword({'yes'}, BeggarFirst, {npcHandler = npcHandler, onlyFocus = true, reset = true})
node1:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Alright then. Come back when you got all neccessary items.', reset = true})
local node2 = keywordHandler:addKeyword({'second beggar addon'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'To achieve the second beggar addon you need to give me simon the beggar\'s staff. Do you have it with you?'})
node2:addChildKeyword({'yes'}, BeggarSecond, {npcHandler = npcHandler, onlyFocus = true, reset = true})
node2:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Alright then. Come back when you got all neccessary items.', reset = true})
npcHandler:addModule(FocusModule:new())