leandropamgomes 1 Postado Dezembro 11, 2013 Share Postado Dezembro 11, 2013 Eai pessoal do xtibia, estou com um bug que venha continuando quando o player usa os "F1 a F12", que fica bugando quando liga o servidor. 10/12/2013 22:31:45] [Error - TalkAction Interface] [10/12/2013 22:31:45] data/talkactions/scripts/move1.lua:onSay [10/12/2013 22:31:45] Description: [10/12/2013 22:31:45] (luaGetPlayerSlotItem) Player not found Ai está meu talkaction move1.lua local msgs = {"use ", ""} function doAlertReady(cid, id, movename, n, cd) if not isCreature(cid) then return true end local myball = getPlayerSlotItem(cid, 8) --[[if myball.itemid > 0 and getItemAttribute(myball.uid, cd) == "cd:"..id.."" then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, getPokeballName(myball.uid).." - "..movename.." (m"..n..") is ready!") return true end--]] local p = getPokeballsInContainer(getPlayerSlotItem(cid, 3).uid) if not p or #p <= 0 then return true end for a = 1, #p do if getItemAttribute(p[a], cd) == "cd:"..id.."" then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, getPokeballName(p[a]).." - "..movename.." (m"..n..") is ready!") return true end end end function onSay(cid, words, param, channel) if param ~= "" then return true end if string.len(words) > 3 then return true end if #getCreatureSummons(cid) == 0 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You need a pokemon to use moves.") return 0 end --alterado v1.5 local mypoke = getCreatureSummons(cid)[1] if getCreatureCondition(cid, CONDITION_EXHAUST) then return true end if getCreatureName(mypoke) == "Evolution" then return true end if getCreatureName(mypoke) == "Ditto" or getCreatureName(mypoke) == "Shiny Ditto" then name = getPlayerStorageValue(mypoke, 1010) --edited else name = getCreatureName(mypoke) end --local name = getCreatureName(mypoke) == "Ditto" and getPlayerStorageValue(mypoke, 1010) or getCreatureName(mypoke) local it = string.sub(words, 2, 3) local move = movestable[name].move1 if getPlayerStorageValue(mypoke, 212123) >= 1 then cdzin = "cm_move"..it.."" else cdzin = "move"..it.."" --alterado v1.5 end if it == "2" then move = movestable[name].move2 elseif it == "3" then move = movestable[name].move3 elseif it == "4" then move = movestable[name].move4 elseif it == "5" then move = movestable[name].move5 elseif it == "6" then move = movestable[name].move6 elseif it == "7" then move = movestable[name].move7 elseif it == "8" then move = movestable[name].move8 elseif it == "9" then move = movestable[name].move9 elseif it == "10" then move = movestable[name].move10 elseif it == "11" then move = movestable[name].move11 elseif it == "12" then move = movestable[name].move12 elseif it == "13" then move = movestable[name].move13 end if not move then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Your pokemon doesn't recognize this move.") return true end if getPlayerLevel(cid) < move.level then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You need be atleast level "..move.level.." to use this move.") return true end if getCD(getPlayerSlotItem(cid, 8).uid, cdzin) > 0 and getCD(getPlayerSlotItem(cid, 8).uid, cdzin) < (move.cd + 2) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You have to wait "..getCD(getPlayerSlotItem(cid, 8).uid, cdzin).." seconds to use "..move.name.." again.") return true end if getTileInfo(getThingPos(mypoke)).protection then doPlayerSendCancel(cid, "Your pokemon cannot use moves while in protection zone.") return true end if getPlayerStorageValue(mypoke, 3894) >= 1 then return doPlayerSendCancel(cid, "You can't attack because you is with fear") --alterado v1.3 end --alterado v1.6 if (move.name == "Team Slice" or move.name == "Team Claw") and #getCreatureSummons(cid) < 2 then doPlayerSendCancel(cid, "Your pokemon need be in a team for use this move!") return true end --alterado v1.7 \/\/\/ if isCreature(getCreatureTarget(cid)) and isInArray(specialabilities["evasion"], getCreatureName(getCreatureTarget(cid))) then local target = getCreatureTarget(cid) if math.random(1, 100) <= passivesChances["Evasion"][getCreatureName(target)] then if isCreature(getMasterTarget(target)) then --alterado v1.6 doSendMagicEffect(getThingPos(target), 211) doSendAnimatedText(getThingPos(target), "TOO BAD", 215) doTeleportThing(target, getClosestFreeTile(target, getThingPos(mypoke)), false) doSendMagicEffect(getThingPos(target), 211) doFaceCreature(target, getThingPos(mypoke)) return true --alterado v1.6 end end end if move.target == 1 then if not isCreature(getCreatureTarget(cid)) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You don\'t have any targets.") return 0 end if getCreatureCondition(getCreatureTarget(cid), CONDITION_INVISIBLE) then return 0 end if getCreatureHealth(getCreatureTarget(cid)) <= 0 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Your have already defeated your target.") return 0 end if not isCreature(getCreatureSummons(cid)[1]) then return true end if getDistanceBetween(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid))) > move.dist then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Get closer to the target to use this move.") return 0 end if not isSightClear(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), false) then return 0 end end local newid = 0 if isSleeping(mypoke) or isSilence(mypoke) then --alterado v1.5 doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Sorry you can't do that right now.") return 0 else newid = setCD(getPlayerSlotItem(cid, 8).uid, cdzin, move.cd) end doCreatureSay(cid, ""..getPokeName(mypoke)..", "..msgs[math.random(#msgs)]..""..move.name.."!", TALKTYPE_SAY) local summons = getCreatureSummons(cid) --alterado v1.6 addEvent(doAlertReady, move.cd * 1000, cid, newid, move.name, it, cdzin) for i = 2, #summons do if isCreature(summons) and getPlayerStorageValue(cid, 637501) >= 1 then docastspell(summons, move.name) --alterado v1.6 end end docastspell(mypoke, move.name) doCreatureAddCondition(cid, playerexhaust) if useKpdoDlls then doUpdateCooldowns(cid) end return 0 end Não sei por que; não ta indo o spoiler. Link para o comentário https://xtibia.com/forum/topic/225423-encerrado-bug-socoro-move1lua/ Compartilhar em outros sites More sharing options...
MaxxSilva 13 Postado Dezembro 11, 2013 Share Postado Dezembro 11, 2013 (editado) o spoiler é assim [.spoiler.]texto claro sem os pontos E sobre o script tenta esse local msgs = {"use ", ""}function doAlertReady(cid, id, movename, n, cd)if not isCreature(cid) then return true endlocal myball = getPlayerSlotItem(cid, 8)if myball.itemid > 0 and getItemAttribute(myball.uid, cd) == "cd:"..id.."" thendoPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, getPokeballName(myball.uid).." - "..movename.." (m"..n..") is ready!")return trueendlocal p = getPokeballsInContainer(getPlayerSlotItem(cid, 3).uid)if not p or #p <= 0 then return true endfor a = 1, #p doif getItemAttribute(p[a], cd) == "cd:"..id.."" thendoPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, getPokeballName(p[a]).." - "..movename.." (m"..n..") is ready!")return trueendendendfunction onSay(cid, words, param, channel)if param ~= "" then return true endif string.len(words) > 3 then return true endif #getCreatureSummons(cid) == 0 thendoPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You need a pokemon to use moves.")return 0end--alterado v1.5local mypoke = getCreatureSummons(cid)[1]if getCreatureCondition(cid, CONDITION_EXHAUST) then return true endif getCreatureName(mypoke) == "Evolution" then return true endif getCreatureName(mypoke) == "Ditto" or getCreatureName(mypoke) == "Shiny Ditto" thenname = getPlayerStorageValue(mypoke, 1010) --editedelsename = getCreatureName(mypoke)end--local name = getCreatureName(mypoke) == "Ditto" and getPlayerStorageValue(mypoke, 1010) or getCreatureName(mypoke)local it = string.sub(words, 2, 3)local move = movestable[name].move1if getPlayerStorageValue(mypoke, 212123) >= 1 thencdzin = "cm_move"..it..""elsecdzin = "move"..it.."" --alterado v1.5endif it == "2" thenmove = movestable[name].move2elseif it == "3" thenmove = movestable[name].move3elseif it == "4" thenmove = movestable[name].move4elseif it == "5" thenmove = movestable[name].move5elseif it == "6" thenmove = movestable[name].move6elseif it == "7" thenmove = movestable[name].move7elseif it == "8" thenmove = movestable[name].move8elseif it == "9" thenmove = movestable[name].move9elseif it == "10" thenmove = movestable[name].move10elseif it == "11" thenmove = movestable[name].move11elseif it == "12" thenmove = movestable[name].move12elseif it == "13" thenmove = movestable[name].move13endif not move thendoPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Your pokemon doesn't recognize this move.")return trueendif getPlayerLevel(cid) < move.level thendoPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You need be atleast level "..move.level.." to use this move.")return trueendif getCD(getPlayerSlotItem(cid, 8).uid, cdzin) > 0 and getCD(getPlayerSlotItem(cid, 8).uid, cdzin) < (move.cd + 2) thendoPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You have to wait "..getCD(getPlayerSlotItem(cid, 8).uid, cdzin).." seconds to use "..move.name.." again.")return 0endif getTileInfo(getThingPos(mypoke)).protection thendoPlayerSendCancel(cid, "Your pokemon cannot use moves while in protection zone.")return 0endif getPlayerStorageValue(mypoke, 3894) >= 1 thenreturn doPlayerSendCancel(cid, "You can't attack because you is with fear") --alterado v1.3endif move.name == "Team Slice" or move.name == "Team Claw" and #getCreatureSummons(cid) < 2 then --alterado v1.5doPlayerSendCancel(cid, "Your pokemon need be in a team for use this move!")return 0endif isCreature(getCreatureTarget(cid)) and isInArray(specialabilities["too bad"], getCreatureName(getCreatureTarget(cid))) and math.random(1, 100) <= 10 thenlocal target = getCreatureTarget(cid)--alterado v1.5doSendMagicEffect(getThingPos(target), 211)doSendAnimatedText(getThingPos(target), "TOO BAD", 215)doTeleportThing(target, getClosestFreeTile(target, getThingPos(mypoke)), false)doSendMagicEffect(getThingPos(target), 211)doFaceCreature(target, getThingPos(mypoke))return 0endif move.target == 1 thenif not isCreature(getCreatureTarget(cid)) thendoPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You don\'t have any targets.")return 0endif getCreatureCondition(getCreatureTarget(cid), CONDITION_INVISIBLE) thenreturn 0endif getCreatureHealth(getCreatureTarget(cid)) <= 0 thendoPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Your have already defeated your target.")return 0endif not isCreature(getCreatureSummons(cid)[1]) thenreturn trueendif getDistanceBetween(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid))) > move.dist thendoPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Get closer to the target to use this move.")return 0endif not isSightClear(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), false) thenreturn 0endendlocal newid = 0if isSleeping(mypoke) or isSilence(mypoke) then --alterado v1.5doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Sorry you can't do that right now.")return 0elsenewid = setCD(getPlayerSlotItem(cid, 8).uid, cdzin, move.cd)enddoCreatureSay(cid, ""..getPokeName(mypoke)..", "..msgs[math.random(#msgs)]..""..move.name.."!", TALKTYPE_SAY)local mypoke22 = getCreatureSummons(cid)[2] or 0 --edited teamlocal mypoke33 = getCreatureSummons(cid)[3] or 0addEvent(doAlertReady, move.cd * 1000, cid, newid, move.name, it, cdzin)if mypoke33 ~= 0 and getPlayerStorageValue(cid, 637501) >= 1 thenif move.name ~= "Team Slice" and move.name ~= "Team Claw" then --alterado v1.5docastspell(mypoke33, move.name)docastspell(mypoke22, move.name)endelseif mypoke22 ~= 0 and getPlayerStorageValue(cid, 637501) >= 1 then --edited teamif move.name ~= "Team Slice" and move.name ~= "Team Claw" then --alterado v1.5docastspell(mypoke22, move.name)endenddocastspell(mypoke, move.name)doCreatureAddCondition(cid, playerexhaust)if useKpdoDlls thendoUpdateCooldowns(cid)endreturn 0end Editado Dezembro 11, 2013 por MaxxSilva Link para o comentário https://xtibia.com/forum/topic/225423-encerrado-bug-socoro-move1lua/#findComment-1591536 Compartilhar em outros sites More sharing options...
leandropamgomes 1 Postado Dezembro 11, 2013 Autor Share Postado Dezembro 11, 2013 Valeu deu certo +_+ Ainda está com bug, quando ligo o servidor, mas agora reduzil muito [11/12/2013 09:46:26] [Error - TalkAction Interface] [11/12/2013 09:46:26] data/talkactions/scripts/move1.lua:onSay [11/12/2013 09:46:26] Description: [11/12/2013 09:46:26] (luaGetItemAttribute) Item not found Link para o comentário https://xtibia.com/forum/topic/225423-encerrado-bug-socoro-move1lua/#findComment-1591582 Compartilhar em outros sites More sharing options...
Gabrieltxu 737 Postado Dezembro 19, 2013 Share Postado Dezembro 19, 2013 Tópico movido para a seção de dúvidas e pedidos resolvidos. Link para o comentário https://xtibia.com/forum/topic/225423-encerrado-bug-socoro-move1lua/#findComment-1594463 Compartilhar em outros sites More sharing options...
Stigal 584 Postado Abril 21, 2018 Share Postado Abril 21, 2018 A questão neste tópico de suporte foi encerrada por falta de respostas. Este tópico está fechado e foi movido para Suporte - Tópicos Sem Resposta. + Caso a dúvida não tenha sido resolvida você poderá criar outro tópico solicitando ajuda. * Lembre-se que é permitido dar UP no tópico a cada 24 horas para assim o destacar e manter movimentado. Link para o comentário https://xtibia.com/forum/topic/225423-encerrado-bug-socoro-move1lua/#findComment-1736011 Compartilhar em outros sites More sharing options...
Posts Recomendados