[31/12/2009 16:47:35] data/npc/lib/npc.lua:46: attempt to perform arithmetic on global 'sx' (a table value)
[31/12/2009 16:47:35] stack traceback:
[31/12/2009 16:47:35] data/npc/lib/npc.lua:46: in function 'getDistanceToCreature'
[31/12/2009 16:47:35] data/npc/scripts/oak info.lua:36: in function <data/npc/scripts/oak info.lua:33>
Anyone know what the problem could be?
here is the NPC
[31/12/2009 16:47:35] stack traceback:
[31/12/2009 16:47:35] data/npc/lib/npc.lua:46: in function 'getDistanceToCreature'
[31/12/2009 16:47:35] data/npc/scripts/oak info.lua:36: in function <data/npc/scripts/oak info.lua:33>
Anyone know what the problem could be?
here is the NPC
Lua:
local focus = 0
local talk_start = 0
local target = 0
local following = false
local attacking = false
function onThingMove(creature, thing, oldpos, oldstackpos)
end
function onCreatureAppear(creature)
end
function onCreatureDisappear(cid, pos)
if focus == cid then
selfSay('Good bye then.')
focus = 0
talk_start = 0
end
end
function onCreatureTurn(creature)
end
function msgcontains(txt, str)
return (string.find(txt, str) and not string.find(txt, '(%w+)' .. str) and not string.find(txt, str .. '(%w+)'))
end
function onCreatureSay(cid, type, msg)
msg = string.lower(msg)
if (msgcontains(msg, 'hi') and (focus == 0)) and getDistanceToCreature(cid) < 4 then
selfSay('Hi '..getPlayerName(cid)..'. Before you dare facing the Demon Oak, you should talk to my brother. Last time I heard from him he had settled down in a cave in the Sultans Castle. He had managed to dig a cave below his throne. Talk to him and then come back and ask me about the DEMON OAK.')
focus = cid
talk_start = os.clock()
elseif msgcontains(msg, 'hi') and (focus ~= cid) and getDistanceToCreature(cid) < 4 then
selfSay('Sorry, ' .. creatureGetName(cid) .. '! I talk to you in a minute.')
elseif focus == cid then
talk_start = os.clock()
if msgcontains(msg, 'demon oak') then
selfSay('So, you talked to my brother? Head south from here and use the mighty axe on the Oaks arms. If you defeat him, go talk to my brother again and ask him about the DEMON OAK.')
end
if msgcontains(msg, 'bye') and getDistanceToCreature(cid) < 4 then
selfSay('Good bye, ' .. creatureGetName(cid) .. '!')
focus = 0
talk_start = 0
end
end
end
function onThink()
if (os.clock() - talk_start) > 15 then
if focus > 0 then
selfSay('Next Please...')
end
focus = 0
end
if focus ~= 0 then
if getDistanceToCreature(focus) > 2 then
selfSay('Good bye then.')
focus = 0
end
end
end
Last edited: