Postado Abril 17, 2015 10 anos Autor funciona assim: ele escolhe aleatoriamente uma vitima entre as que estão entre 3 sqm de distancia; Se você coloca 100% de chance de ricochetear ele vai mudar de vitima toda vez que vc soltar e ele anda N vezes onde N segue a formulahits = math.ceil(getPlayerMagLevel(cid)/10) - (math.random(0, (math.floor(getPlayerMagLevel(cid)/10))) - 1) (ml do player / 10) - um valor aleatorio que vai entre -1 e (ml/10 -1) Se você colocar um numero alto de hit vc percebe que ele chicoteia de forma igual todos os monstros, é questão de sorte mesmo. Faz o teste de colocar um +20 ali na frente de hits e vê se ele não passa pros outros monstros do triangulo (leve em consideração que a distancia maxima que ele passa é 3 sqm do alvo atual, então se vc fizer dessa forma: X1 --- X2 --- X3 e soltar no X1, ele vai pro X2, e do X2 ele pode ir tanto pro X1 de volta como pro X3 (vai depender da sorte)
Postado Abril 17, 2015 10 anos funciona assim: ele escolhe aleatoriamente uma vitima entre as que estão entre 3 sqm de distancia; Se você coloca 100% de chance de ricochetear ele vai mudar de vitima toda vez que vc soltar e ele anda N vezes onde N segue a formula hits = math.ceil(getPlayerMagLevel(cid)/10) - (math.random(0, (math.floor(getPlayerMagLevel(cid)/10))) - 1) (ml do player / 10) - um valor aleatorio que vai entre -1 e (ml/10 -1) Se você colocar um numero alto de hit vc percebe que ele chicoteia de forma igual todos os monstros, é questão de sorte mesmo. Faz o teste de colocar um +20 ali na frente de hits e vê se ele não passa pros outros monstros do triangulo (leve em consideração que a distancia maxima que ele passa é 3 sqm do alvo atual, então se vc fizer dessa forma: X1 --- X2 --- X3 e soltar no X1, ele vai pro X2, e do X2 ele pode ir tanto pro X1 de volta como pro X3 (vai depender da sorte) Funcionou do jeito que você disse,20 ficou muito,mas 10 ficou bom,kkkkk Essa distância de 3 sqm é uma regra?Se quiser aumentar para 4 de qual modo configuro?
Postado Abril 17, 2015 10 anos Autor eu coloquei 3 porque eu fiz testes e achei a melhor configuração, mas vc pode editar pela lib procurando a função doBlast e alterando na parte em que está: for j = -3, 3 do for k = -3, 3 do coloca for j = -4, 4 do for k = -4, 4 do Isso server pra indicar que ele vai desde -4 até +4 em X e de -4 em +4 em Y, se vc colocar valores diferentes pra obter figuras diferentes de um quadrado, fique a vontade;
Postado Abril 22, 2015 10 anos Ae cara, muito bom essa magia, eu queria editar ela pra deixar igual a do lich do Dota 2, é igualzinho isso soh que eh de gelo eu mudar aqui effectx = 35, effectz = 11, mudei para : effectx = 36, effectz = 43, <<< gelo Soh que ainda continua dando dano de energy e nao tiro o efeito de recebimento no mosntro, ele recebe como imagen de gelo E de (ainda) uma em cima da outra, mas da dano soh de energy
Postado Abril 22, 2015 10 anos Autor doBlast(cid, target, config.delay, config.effectx, config.effectz, config.percent, formula.min, formula.max, 2, hits, getCreaturePosition(cid), nil) esse 2 ali em cima logo após formula.max indica o type de combat que irá fazer, em data/lib/constant.lua vc pode verificar quais são os tipos que seu server possui: COMBAT_NONE = 0 COMBAT_PHYSICALDAMAGE = 1 COMBAT_ENERGYDAMAGE = 2 COMBAT_EARTHDAMAGE = 4 COMBAT_POISONDAMAGE = 4 COMBAT_FIREDAMAGE = 8 COMBAT_UNDEFINEDDAMAGE = 16 COMBAT_LIFEDRAIN = 32 COMBAT_MANADRAIN = 64 COMBAT_HEALING = 128 COMBAT_DROWNDAMAGE = 256 COMBAT_ICEDAMAGE = 512 COMBAT_HOLYDAMAGE = 1024 COMBAT_DEATHDAMAGE = 2048
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.