Postado Julho 14, 2012 12 anos local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_ENERGYDAMAGE) setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_ENERGYAREA) setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ENERGY) setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -1, -10, -1, -20, 5, 5, 1.4, 2.1) function onCastSpell(cid, var) addEvent (doCombat, 2000, cid, combat, var) return true end essa magia solta o evento "Combat" depois de 2 segundos que voce manda a palavra magia. Mais o bug e assim , Se voce soltar a magia e correr pra lonje do bixo ou entrar no pz a magia voua no player do mesmo jeito , queria algumas funções pra eu usar tipo pra comprar a posição dos jogadores e se ele ta em algum pz ou mudou de "Floader" ( andar) pra cançelar o evento ... não to dando conta alguem pode me ajudar? Iria agradecer muito (: sou iniciante ainda aqui haha'
Postado Julho 14, 2012 12 anos Só é você fazer outra função, que verifique se o player está perto da criatura para soltar o ataque, se sim ele chama o Combat, se não não faz nada, qualquer coisa se não souber fazer posta aqui...
Postado Julho 14, 2012 12 anos Autor nao sei fazer cara não entendo as funções bem ainda ): me ajuda ai? adciona no msn pra me ajudar? [email protected] tentei fazer isso so que so muito inesperiente ainda não dei conta ;s me confundo muito ainda Editado Julho 14, 2012 12 anos por vampire xd adição para nao flodar (veja o histórico de edições)
Postado Julho 14, 2012 12 anos local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_ENERGYDAMAGE) setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_ENERGYAREA) setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ENERGY) setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -1, -10, -1, -20, 5, 5, 1.4, 2.1) function onCastSpell(cid, var) addEvent(function() local target = variantToNumber(var) local position = getThingPosition(target) if getTileInfo(position).protection or getDistanceBetween(getThingPosition(cid), position) > 4 then return end doCombat(cid, combat, var) end, 2 * 1000) return true end Isso vai verificar se o alvo foi para protection zone ou se a distância entre os alvos ficou muito grande (coloquei 4 sqms). Editado Julho 14, 2012 12 anos por Lpz (veja o histórico de edições)
Postado Julho 14, 2012 12 anos gostei, espero que funcione, ia postar um outro esquema aqui, mas este esta bem limpo e bem feito! parabens, poste o resultado se funcionou por favor!
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.