Postado Abril 20, 2015 10 anos isso ai é facil =V o numero que estou editando no caso o: addEvent(onCastSpell1, 200, parameters) VERMELHO:Tempo para usar a spell eu coloquei para usar uma depois da outra só editar o tempo ... Ando devagar, porque já tive pressa. E levo esse sorriso, porque já chorei demais... ________________________________________________________________________________ Minhas Sprites: Mega Metagross Mega Abomasnow Pack de Shinys [Posso atualizá-lo com novos shinys a qualquer momento] Tutoriais: [Completo] Criando e adicionando um novo Pokémon [Actions] Criando quest no RME Editores Lua/Xml/Sync Entre outros: Editores Win/Mac/Linux
Postado Abril 20, 2015 10 anos Eu fiz essa spell rápida aqui, pois estou de saída. Se não for assim que você quis dizer, mais tarde eu entro pra ver. ------[[Script by MaTTch]]------ local config = { combat = COMBAT_FIREDAMAGE, -- tipo de combat combatEffect = CONST_ME_FIREATTACK, -- efeito spellRepeat = 50, -- quantas vezes vai repetir spellDelay = 100, -- delay entre as ondas (100 = 0.1 segundo) waves = 7 -- ondas } local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, config.combat) setCombatParam(combat, COMBAT_PARAM_EFFECT, config.combatEffect) setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -13.8, 0, -14.0, 0) local function getWaveFromPos(wave, pos) local ret = {} for a = -wave, wave do table.insert(ret, {x=pos.x+a,y=pos.y-wave,z=pos.z}) end for a = -(wave-1), wave do table.insert(ret, {x=pos.x+wave,y=pos.y+a,z=pos.z}) end for a = -wave, (wave-1) do table.insert(ret, {x=pos.x+a,y=pos.y+wave,z=pos.z}) end for a = -(wave-1), wave do table.insert(ret, {x=pos.x-wave,y=pos.y+a,z=pos.z}) end return ret end local function doSpell(cid, var, a, b) b = not b and 1 or a > config.waves and b + 1 or b a = not a and 1 or a > config.waves and 1 or a if(isCreature(cid) and b <= config.spellRepeat) then for _, pos in pairs(getWaveFromPos(a, getThingPos(cid))) do doCombat(cid, combat, positionToVariant(pos)) end addEvent(doSpell, config.spellDelay, cid, var, a+1, b) end return true end function onCastSpell(cid, var) return doSpell(cid, var) end
Postado Abril 20, 2015 10 anos Autor Na verdade não deu muito certo, tipo vou tentar deixar mais simples: Ele executa a magia dai: primeiro passo: nos sqms em volta dele (1 sqm de distancia) ele começa a soltar 50x naqueles sqm, quando acabar esses 50 efeitos ele vai pro 2 sqm de distancia, e assim vai indo se distanciando.. quando chega no ultimo sqm, ele volta pro 1 (que é os em volta dele) O que voce fez, ele vai soltando em todos sqm ao mesmo tempo, seria tipo uma ordem entende? 50x no 1 sqm, quando acabar, ai ele vai pro 2 sqm de distancia....
Postado Abril 20, 2015 10 anos Na verdade não deu muito certo, tipo vou tentar deixar mais simples: Ele executa a magia dai: primeiro passo: nos sqms em volta dele (1 sqm de distancia) ele começa a soltar 50x naqueles sqm, quando acabar esses 50 efeitos ele vai pro 2 sqm de distancia, e assim vai indo se distanciando.. quando chega no ultimo sqm, ele volta pro 1 (que é os em volta dele) O que voce fez, ele vai soltando em todos sqm ao mesmo tempo, seria tipo uma ordem entende? 50x no 1 sqm, quando acabar, ai ele vai pro 2 sqm de distancia.... E quando ele volta pro primeiro ele começa tudo de novo? Tipo num loop infinito?
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.