Pesquisar na Comunidade
Mostrando resultados para as tags ''script infuncional''.
Encontrado 1 registro
-
Bom dia/tarde/noite. pra ser direto ao ponto... Eu tive uma ideia de um sistema muito interessante para meu servidor. após algum tempo estudando formas de faze-lo eu descobri uma forma (bem feia) de fazer. Após algum tempo trabalhando no script cheguei a um resultado... porém não funcional vejamos: Primeiro a ideia: esse script ,era pra ser bem simples, seria uma skill target que quando atingisse o inimigo deixaria nele um storage value por determinado tempo. sairia um texto animado por puro capricho. passado o tempo esse storage value seria removido e sairia outro texto animado. Esse sistema que pretendo fazer funcionaria somente se o player tivesse equipado com um item, mas tornou-se muito mais problematico do que eu imaginava. vou postar os 2 pois acredito que o erro seja o mesmo então... não muda muito haha. Verifica se X item está equipado: local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE) setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_FIREAREA) setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_FIRE) setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -2, -1, -3, -2) local inimigo = {} local escudo = 2520 local slot1 = getPlayerSlotItem(getCreatureTarget(cid), 5) local slot2 = getPlayerSlotItem(getCreatureTarget(cid), 6) local storage = 199901 function onCastSpell(cid, var) table.insert(inimigo, getCreatureTarget(cid)) if isPlayer then if slot1 or slot2 == 2520 then setPlayerStorageValue(#inimigo, storage, 1) doSendAnimatedText(getCreaturePosition(cid), 'Charged', 180) else return doCombat(cid, combar, var) end addEvent(function() if isCreature(cid) then setPlayerStorageValue(#inimigo, storage, 0) doSendAnimatedText(getCreaturePosition(cid), 'Charge lost', 180) end end,4000) return doCombat(cid, combat, var) end end Não verifica se item está equipado: local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE) setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_FIREAREA) setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_FIRE) setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -2, -1, -3, -2) local inimigo = {} local storage = 199901 function onCastSpell(cid, var) table.insert(inimigo, getCreatureTarget(cid)) if isPlayer then setPlayerStorageValue(#inimigo, storage, 1) doSendAnimatedText(getCreaturePosition(cid), 'Charged', 180) else return doCombat(cid, combat, var) end addEvent(function() if isCreature(cid) then setPlayerStorageValue(#inimigo, storage, 0) doSendAnimatedText(getCreaturePosition(cid), 'Charge lost', 180) end end,4000) return doCombat(cid, combat, var) end O que me intriga muito nos 2 scripts é o fato de não ter nenhum erro no debugger (OtScriptLive) e nem no distro do servidor. o unico erro aparente é quano o player usa que aparece o erro avisando que o player está sem mana... porém baixei o custo de mana da magia pra 0 e testei em 2 personagens com mais de 5k de mana... eu sou um scripter iniciante (MUITO iniciante... NOVATO... NEWBA) portanto deve ser um erro ridiculo... alguem tem alguma solução? haha