Postado Junho 28, 2018 7 anos Olá, tenho aqui um Mod de exame jounin e ele esta falhando quando mato o primeiro monstro. Erro na distro: Spoiler [21:27:15.804] end:onDeath [21:27:15.805] Description: [21:27:15.805] (luaGetThing) Thing not found [21:27:15.806] [Error - CreatureScript Interface] [21:27:15.807] In a timer event called from: [21:27:15.808] function onDeath(cid, corpse, deathList) [21:27:15.811] domodlib('ArenaLib2') [21:27:15.811] if isPlayer(deathList[1]) and isMonster(cid) then [21:27:15.812] if getPlayerStorageValue(deathList[1], storage) > -1 and getPlayerStorageValue(deathList[1], storage) < 5 then [21:27:15.814] setPlayerStorageValue(deathList[1], storage, getPlayerStorageValue(deathList[1], storage) + 1) [21:27:15.815] addEvent(doRemoveCorpse, 500, getCreaturePosition(cid)) [21:27:15.815] setPlayerStorageValue(deathList[1], storage2, -1) [21:27:15.816] end [21:27:15.817] if getPlayerStorageValue(deathList[1], storage) == 5 then [21:27:15.817] doTeleportThing(deathList[1], trofypos) [21:27:15.818] setPlayerStorageValue(deathList[1],49502,1) [21:27:15.821] end [21:27:15.822] end [21:27:15.823] return TRUE [21:27:15.824] end:onDeath [21:27:15.825] Description: [21:27:15.826] (luaDoRemoveItem) Item not found E aqui a script: Spoiler <?xml version="1.0" encoding="UTF-8"?> <mod name="Exame Jounin" enabled="yes" author="Demonbholder" forum="XTibia.com"> <config name="ArenaLib2"><![CDATA[ dinheiro = 10000 storage = 47002 storage2 = 47003 playerpos = {x = 964, y = 899, z = 7} -- posicao da arena trofypos = {x=986, y=902, z=8} -- posicao da area apos a arena monpos = {x = 964, y = 894, z = 7} -- posicao onde o monstro sera criado fromPos,toPos = {x = 969, y = 893, z = 7},{x = 960, y = 900, z = 7} -- posio do canto superior direito, posio do canto inferior esquerdo da arena monsters = { [0] = 'uchiha fugaku', [1] = 'chouza akimichi', [2] = 'anko', [3] = 'zabuza', [4] = 'kakashi' } function doRemoveCorpse(pos) for i = 1, 255 do corp = {x=pos.x, y=pos.y, z=pos.z, stackpos=i} if isCorpse(getThingFromPos(corp).uid) then break end end doRemoveItem(getThingFromPos(corp).uid, 1) end ]]></config> <creaturescript type="death" name="Arena2" event="script"><![CDATA[ domodlib('ArenaLib2') if isPlayer(deathList[1]) and isMonster(cid) then if getPlayerStorageValue(deathList[1], storage) > -1 and getPlayerStorageValue(deathList[1], storage) < 5 then setPlayerStorageValue(deathList[1], storage, getPlayerStorageValue(deathList[1], storage) + 1) addEvent(doRemoveCorpse, 500, getCreaturePosition(cid)) setPlayerStorageValue(deathList[1], storage2, -1) end if getPlayerStorageValue(deathList[1], storage) == 5 then doTeleportThing(deathList[1], trofypos) setPlayerStorageValue(deathList[1],49502,1) end end return TRUE ]]></creaturescript> <creaturescript type="kill" name="ArenaK2" event="script"><![CDATA[ domodlib('ArenaLib2') if isMonster(cid) and isPlayer(target) then if getPlayerStorageValue(target, storage) > -1 and getPlayerStorageValue(target, storage) < 5 then setPlayerStorageValue(target, storage, -1) setPlayerStorageValue(target, storage2, -1) doRemoveCreature(cid) addEvent(doRemoveCorpse, 500, getCreaturePosition(target)) end end return TRUE ]]></creaturescript> <creaturescript type="logout" name="ArenaL2" event="script"><![CDATA[ domodlib('ArenaLib2') if getPlayerStorageValue(cid, storage) > -1 and getPlayerStorageValue(cid, storage) < 5 then return FALSE, doPlayerSendCancel(cid, "You can't logout during arena!") end return TRUE ]]></creaturescript> <movevent type="StepIn" actionid="40003" event="script"><![CDATA[ domodlib('ArenaLib2') if monsters[getPlayerStorageValue(cid, storage)] then if getPlayerStorageValue(cid, storage2) == -1 then local mon = doCreateMonster(monsters[getPlayerStorageValue(cid, storage)], monpos) setPlayerStorageValue(cid, storage2, 1) registerCreatureEvent(mon, "Arena2") registerCreatureEvent(mon, "ArenaK2") end end return TRUE ]]></movevent> <movevent type="StepIn" actionid="40002" event="script"><![CDATA[ domodlib('ArenaLib2') for x = fromPos.x, toPos.x do for y = fromPos.y,toPos.y do local m = getTopCreature({x=x, y=y, z=fromPos.z}).uid if m~= 0 and isPlayer(m) then doTeleportThing(cid, fromPosition, true) return doPlayerSendCancel(cid, "Alguem esta fazendo o exame Jounin.") end end end if getPlayerMoney(cid) < dinheiro then return TRUE, doTeleportThing(cid, fromPosition), doPlayerSendCancel(cid, "Tens que ter 1g para fazer o exame jounin, sera para seus proprios medicamentos.") end doPlayerRemoveMoney(cid, dinheiro) setPlayerStorageValue(cid, storage, 0) doPlayerSendTextMessage(cid, 4, "Exame Jounin!") return TRUE, doTeleportThing(cid, playerpos) ]]></movevent> </mod> @Vodkart Olá, que tal dar uma olhada no meu projeto? https://discord.gg/bsNkbsyJ3W
Postado Junho 28, 2018 7 anos tenta trocar essa função: function doRemoveCorpse(pos) for i = 1, 255 do corp = {x=pos.x, y=pos.y, z=pos.z, stackpos=i} if isCorpse(getThingFromPos(corp).uid) then break end end doRemoveItem(getThingFromPos(corp).uid, 1) end por essa: function doRemoveCorpse(pos) for i = 0, 255 do pos.stackpos = i tile = getTileThingByPos(pos) if tile.uid > 0 and isCorpse(tile.uid) then doRemoveItem(tile.uid) end end end acho que com essa edição funciona [*Ninguém será digno do sucesso se não usar suas derrotas para conquistá-lo.*] DISCORD: vodkart#6090
Postado Junho 28, 2018 7 anos Autor @Vodkart mano no script também quando sai da arena por tp ele não consegue deslogar nem dentro do dp como desativo a opção de não deixar o player deslogar dentro da arena? (n é nologout no rme é no mod mesmo) ele buga e não deixa mais o player desloga não desloga nem com /r ou /kick Olá, que tal dar uma olhada no meu projeto? https://discord.gg/bsNkbsyJ3W
Postado Junho 28, 2018 7 anos Solução <?xml version="1.0" encoding="UTF-8"?> <mod name="Exame Jounin" enabled="yes" author="Demonbholder" forum="XTibia.com"> <config name="ArenaLib2"><![CDATA[ dinheiro = 10000 storage = 47002 storage2 = 47003 playerpos = {x = 964, y = 899, z = 7} -- posicao da arena trofypos = {x=986, y=902, z=8} -- posicao da area apos a arena monpos = {x = 964, y = 894, z = 7} -- posicao onde o monstro sera criado fromPos,toPos = {x = 960, y = 893, z = 7},{x = 969, y = 900, z = 7} -- posio do canto superior direito, posio do canto inferior esquerdo da arena monsters = { [0] = 'uchiha fugaku', [1] = 'chouza akimichi', [2] = 'anko', [3] = 'zabuza', [4] = 'kakashi' } function doRemoveCorpse(pos) for i = 0, 255 do pos.stackpos = i tile = getTileThingByPos(pos) if tile.uid > 0 and isCorpse(tile.uid) then doRemoveItem(tile.uid) end end end ]]></config> <creaturescript type="death" name="Arena2" event="script"><![CDATA[ domodlib('ArenaLib2') if isPlayer(deathList[1]) and isMonster(cid) then if getPlayerStorageValue(deathList[1], storage) > -1 and getPlayerStorageValue(deathList[1], storage) < 5 then setPlayerStorageValue(deathList[1], storage, getPlayerStorageValue(deathList[1], storage) + 1) addEvent(doRemoveCorpse, 500, getCreaturePosition(cid)) setPlayerStorageValue(deathList[1], storage2, -1) end if getPlayerStorageValue(deathList[1], storage) == 5 then doTeleportThing(deathList[1], trofypos) setPlayerStorageValue(deathList[1],49502,1) end end return TRUE ]]></creaturescript> <creaturescript type="kill" name="ArenaK2" event="script"><![CDATA[ domodlib('ArenaLib2') if isMonster(cid) and isPlayer(target) then if getPlayerStorageValue(target, storage) > -1 and getPlayerStorageValue(target, storage) < 5 then setPlayerStorageValue(target, storage, -1) setPlayerStorageValue(target, storage2, -1) doRemoveCreature(cid) addEvent(doRemoveCorpse, 500, getCreaturePosition(target)) end end return TRUE ]]></creaturescript> <creaturescript type="logout" name="ArenaL2" event="script"><![CDATA[ domodlib('ArenaLib2') if isInRange(getPlayerPosition(cid), fromPos, toPos) then return FALSE, doPlayerSendCancel(cid, "You can't logout during arena!") end return TRUE ]]></creaturescript> <movevent type="StepIn" actionid="40003" event="script"><![CDATA[ domodlib('ArenaLib2') if monsters[getPlayerStorageValue(cid, storage)] then if getPlayerStorageValue(cid, storage2) == -1 then local mon = doCreateMonster(monsters[getPlayerStorageValue(cid, storage)], monpos) setPlayerStorageValue(cid, storage2, 1) registerCreatureEvent(mon, "Arena2") registerCreatureEvent(mon, "ArenaK2") end end return TRUE ]]></movevent> <movevent type="StepIn" actionid="40002" event="script"><![CDATA[ domodlib('ArenaLib2') for x = fromPos.x, toPos.x do for y = fromPos.y,toPos.y do local m = getTopCreature({x=x, y=y, z=fromPos.z}).uid if m~= 0 and isPlayer(m) then doTeleportThing(cid, fromPosition, true) return doPlayerSendCancel(cid, "Alguem esta fazendo o exame Jounin.") end end end if getPlayerMoney(cid) < dinheiro then return TRUE, doTeleportThing(cid, fromPosition), doPlayerSendCancel(cid, "Tens que ter 1g para fazer o exame jounin, sera para seus proprios medicamentos.") end doPlayerRemoveMoney(cid, dinheiro) setPlayerStorageValue(cid, storage, 0) doPlayerSendTextMessage(cid, 4, "Exame Jounin!") return TRUE, doTeleportThing(cid, playerpos) ]]></movevent> </mod> [*Ninguém será digno do sucesso se não usar suas derrotas para conquistá-lo.*] DISCORD: vodkart#6090
Postado Junho 28, 2018 7 anos Autor @Vodkart Sei que o topico ja esta respondido mas devido o bug de cima meu adm não desloga mais, nem fechando e abrindo o servidor, não queria resetar a database só por isso teria como desbugar por algum lugar? Olá, que tal dar uma olhada no meu projeto? https://discord.gg/bsNkbsyJ3W
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.