Exmortis
Member
- Joined
- Jun 27, 2008
- Messages
- 189
- Reaction score
- 5
I've got a problem with my Pet system a TFS 0.2.7 server.
When I logout when my pet is summoned, i get alot of errors in console.
Everything works the way I want, its just the errors that annoys me.
Imagine when i open the server and 30 people are summoning their pets and logging then out.
Would be a huge spam apartment in the serverlogs.
If anyone can solve the problem or just find a way to help me get rid of the errors, that'd be swell.
Ofc, rep.
Original script:
http://otland.net/f81/many-my-fully-lua-pet-system-many-features-3432/#post47258
I get the following error:
data\talkactions\scripts\pets\!pet.lua
When I logout when my pet is summoned, i get alot of errors in console.
Everything works the way I want, its just the errors that annoys me.
Imagine when i open the server and 30 people are summoning their pets and logging then out.
Would be a huge spam apartment in the serverlogs.
If anyone can solve the problem or just find a way to help me get rid of the errors, that'd be swell.
Ofc, rep.
Original script:
http://otland.net/f81/many-my-fully-lua-pet-system-many-features-3432/#post47258
I get the following error:
Code:
Lua Script Error: [TalkAction Interface]
in a timer event called from:
data/talkactions/scripts/pets/!pet.lua:onSay
luaGetPlayerStorageValue<>. Player not found
Lua Script Error: [TalkAction Interface]
in a timer event called from:
data/talkactions/scripts/pets/!pet.lua:onSay
luaGetPlayerStorageValue<>. Player not found
data\talkactions\scripts\pets\!pet.lua
Code:
dofile("./petConfig.lua")
function doPlayerAddSummon(cid, name, pos)
local MyCreature = doSummonCreature(name, pos)
doConvinceCreature(cid, MyCreature)
return MyCreature
end
local myPet = ""
local myPetUid = 0
function onSay(cid, words, param)
if isExhausted(cid) == 1 then
return 0
end
if getPlayerStorageValue(cid, storages.petMag) == -1 then
setPlayerStorageValue(cid, storages.petMag, 0)
end
if isCreature(getPlayerStorageValue(cid, storages.petUid)) == 0 then
if getTilePzInfo(getCreaturePosition(cid)) == 0 then
if getPlayerStorageValue(cid, storages.petIsOnline) == 1 or getPlayerStorageValue(cid, storages.petIsOnline) == -1 then
for i = 1, #pets do
if isInArray(pets[i].vocations, getPlayerVocation(cid)) == 1 then
for k = 1, #pets[i].pets do
if pets[i].pets[k].level <= getPlayerLevel(cid) then
myPet = pets[i].pets[k].name
break
end
end
break
end
end
myPetUid = doPlayerAddSummon(cid, myPet, getCreaturePosition(cid))
if myPetUid ~= -1 then
setPlayerStorageValue(cid, storages.petUid, myPetUid)
if getPlayerStorageValue(cid, storages.petDamage) ~= 0 and getPlayerStorageValue(cid, storages.petDamage) ~= -1 then
if getPlayerStorageValue(cid, storages.petDamage) < getCreatureMaxHealth(getPlayerStorageValue(cid, storages.petUid)) then
doCreatureAddHealth(getPlayerStorageValue(cid, storages.petUid), getPlayerStorageValue(cid, storages.petDamage)*-1)
end
end
doChangeSpeed(myPetUid, getCreatureBaseSpeed(cid) - getCreatureBaseSpeed(myPetUid))
doCreatureSay(myPetUid, 'Hello!', TALKTYPE_ORANGE_1)
addMana({cid = cid})
setPlayerStorageValue(cid, storages.petIsOnline, 2)
else
doPlayerSendCancel(cid, 'Not enough room.')
end
else
doPlayerSendCancel(cid, 'Your pet died! You have to revive it.')
end
else
doPlayerSendCancel(cid, 'You cannot summon your pet in PZ.')
end
else
local daPet = getPlayerStorageValue(cid, storages.petUid)
setPlayerStorageValue(cid, storages.petDamage, getCreatureMaxHealth(daPet) - getCreatureHealth(daPet))
doCreatureSay(daPet, 'Byebye !', TALKTYPE_ORANGE_1)
setPlayerStorageValue(cid, storages.petIsOnline, 1)
doSendMagicEffect(getCreaturePosition(daPet), CONST_ME_POFF)
doRemoveCreature(daPet)
end
return setExhausted(cid)
end
Last edited: