Ir para conteúdo
  • Cadastre-se

(Resolvido)Spells em monstro


Ir para solução Resolvido por King Laker,

Posts Recomendados

Diga em poucas palavras a base utilizada (Nome do servidor ou nome do website).

0.4

Base: 

dbo

 

Qual erro está surgindo/O que você procura?

A magia que o monstro usa não tira dano do player, mas aparece o efeito!

 

Seguinte, a spell que estou usando no monstro não esta dando o dano no player, mas o efeito vai normal até o player, estou usando ela porque eu posso modificar pelo script onde exatamente vai o efeito na tela, e se eu usar a outra que tambem postei aqui, da o dano normal no player, mas nao tem como escolher o local na tela onde vai o dano.

SEM DANO

Spoiler

local combat1 = createCombatObject()
setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat1, COMBAT_PARAM_DISTANCEEFFECT, 168)
setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -30.2, 0, -40.1, 0)

local combat2 = createCombatObject()
setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat2, COMBAT_PARAM_DISTANCEEFFECT, 168)
setCombatFormula(combat2, COMBAT_FORMULA_LEVELMAGIC, -30.2, 0, -40.1, 0)

arr1 = {
	{0, 0, 0},
	{0, 3, 0},
	{0, 0, 0}
}

arr2 = {
	{0, 0, 0},
	{0, 3, 0},
	{0, 0, 0}
}

local area1 = createCombatArea(arr1)
local area2 = createCombatArea(arr2)
setCombatArea(combat1, area1)
setCombatArea(combat2, area2)
 
local function onCastSpell1(parameters)
    return isPlayer(parameters.cid) and doCombat(parameters.cid, combat1, parameters.var)
end
 
local function onCastSpell2(parameters)
    return isPlayer(parameters.cid) and doCombat(parameters.cid, combat2, parameters.var)
end
 
function onCastSpell(cid, var)
if isPlayer(cid) and exhaustion.check(cid, 2) then
doPlayerSendCancel(cid, "You are exhausted.")
return FALSE
end

exhaustion.set(cid, 2, 1)
local parameters = { cid = cid, var = var}
local position = {x=getPlayerPosition(cid).x, y=getPlayerPosition(cid).y, z=getPlayerPosition(cid).z}
local position2 = {x=getThingPosition(getCreatureTarget(cid)).x+1, y=getThingPosition(getCreatureTarget(cid)).y+1, z=getThingPosition(getCreatureTarget(cid)).z}
doSendMagicEffect(position2, 424)
addEvent(onCastSpell1, 200, parameters)
addEvent(onCastSpell2, 400, parameters)
return TRUE
end 

 



COM DANO
 

Spoiler

local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat, COMBAT_PARAM_EFFECT, 424)
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, 168)
setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -30.2, 0, -40.1, 0)


function onCastSpell(cid, var)
return doCombat(cid, combat, var)
end

 

 

@xWhiteWolf Desculpa te marcar, sei que é chato isso, mas sei que você é brabo nas spells, se tiver como tem como ver oque é isso que ta dando na minha?

Editado por Zzyzx
Marcação de membro! (veja o histórico de edições)

       112674.gif

 

 

 

Link para o post
Compartilhar em outros sites

@Zzyzx O dano que a magia da é configurada no monstro mesmo, a script é só pra utilizar o effect :) 

VlVKQKC.png&key=d5c17620ae9567a1f898dd7a

 

 

 

  • 532144234_Logo_NTO_BLOOD_Finish_HIM_By_Antonio_Luckas(3).png.fd58d1af125a7e82ccdd751637e9ca93.png
Link para o post
Compartilhar em outros sites
1 minuto atrás, King Laker disse:

@Zzyzx O dano que a magia da é configurada no monstro mesmo, a script é só pra utilizar o effect :) 

 

Então, mas tipo...
ta assim no monstro, A que ta Shukaku ball é a do efeito, e a outra é a que sai o dano, dai coloquei as duas pra fazer uma gambiarra, mas ta certinho.

Essa é que nao funciona.

Spoiler

<attack name="shukaku ball" interval="2000" min="-9000" max="-12000"/>

 

 

Essa é a que funciona.

Spoiler

  <attack name="teste" interval="2000" min="-9000" max="-12000"/>

 

 

 

 

       112674.gif

 

 

 

Link para o post
Compartilhar em outros sites

@Zzyzx Então, o problema é a script?

Spoiler

local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -120.3, 1, -100.3, 1)

local function onCastSpell1(parameters)
return isCreature(parameters.cid) and doCombat(parameters.cid, combat, parameters.var)
end

function onCastSpell(cid, var)
local parameters = {cid = cid, var = var}
local playerpos = getCreaturePosition(cid)
local enemypos = getCreaturePosition(getCreatureTarget(cid))

if isPlayer(cid) and exhaustion.check(cid, 12000) then
doPlayerSendCancel(cid, "You are exhausted.")
doSendMagicEffect(playerpos, 2)
return FALSE
end

local positions = {
[1] = {{x=enemypos.x+1, y=enemypos.y+1, z=enemypos.z}, 159},
}

exhaustion.set(cid, 12000, 1)
addEvent(onCastSpell1, 1, parameters)
for i=1, #positions do
doSendMagicEffect(positions[1], positions[2])
end
return TRUE
end

tenta utilizar essa, se não souber como configurar eu te ajudo :) 

VlVKQKC.png&key=d5c17620ae9567a1f898dd7a

 

 

 

  • 532144234_Logo_NTO_BLOOD_Finish_HIM_By_Antonio_Luckas(3).png.fd58d1af125a7e82ccdd751637e9ca93.png
Link para o post
Compartilhar em outros sites
5 minutos atrás, King Laker disse:

@Zzyzx Então, o problema é a script?

  Ocultar conteúdo

local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -120.3, 1, -100.3, 1)

local function onCastSpell1(parameters)
return isCreature(parameters.cid) and doCombat(parameters.cid, combat, parameters.var)
end

function onCastSpell(cid, var)
local parameters = {cid = cid, var = var}
local playerpos = getCreaturePosition(cid)
local enemypos = getCreaturePosition(getCreatureTarget(cid))

if isPlayer(cid) and exhaustion.check(cid, 12000) then
doPlayerSendCancel(cid, "You are exhausted.")
doSendMagicEffect(playerpos, 2)
return FALSE
end

local positions = {
[1] = {{x=enemypos.x+1, y=enemypos.y+1, z=enemypos.z}, 159},
}

exhaustion.set(cid, 12000, 1)
addEvent(onCastSpell1, 1, parameters)
for i=1, #positions do
doSendMagicEffect(positions[1], positions[2])
end
return TRUE
end

tenta utilizar essa, se não souber como configurar eu te ajudo :) 

 

Funcionou, mas nao ta indo efeito nenhum, tentei por aqui assim, mas nao sei se ta certo KKKKKKK

 

Spoiler

local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat1, COMBAT_PARAM_DISTANCEEFFECT, 157)
setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -120.3, 1, -100.3, 1)

local function onCastSpell1(parameters)
return isCreature(parameters.cid) and doCombat(parameters.cid, combat, parameters.var)
end

function onCastSpell(cid, var)
local parameters = {cid = cid, var = var}
local playerpos = getCreaturePosition(cid)
local enemypos = getCreaturePosition(getCreatureTarget(cid))

if isPlayer(cid) and exhaustion.check(cid, 12000) then
doPlayerSendCancel(cid, "You are exhausted.")
doSendMagicEffect(playerpos, 2)
return FALSE
end

local positions = {
[1] = {{x=enemypos.x+1, y=enemypos.y+1, z=enemypos.z}, 346},
}

exhaustion.set(cid, 12000, 1)
addEvent(onCastSpell1, 1, parameters)
for i=1, #positions do
doSendMagicEffect(positions[1], positions[2])
end
return TRUE
end

 

       112674.gif

 

 

 

Link para o post
Compartilhar em outros sites

@Zzyzx É mano, não sei te ajudar foi oque eu consegui, aqui esta funcionando :/ 

VlVKQKC.png&key=d5c17620ae9567a1f898dd7a

 

 

 

  • 532144234_Logo_NTO_BLOOD_Finish_HIM_By_Antonio_Luckas(3).png.fd58d1af125a7e82ccdd751637e9ca93.png
Link para o post
Compartilhar em outros sites
2 minutos atrás, King Laker disse:

@Zzyzx É mano, não sei te ajudar foi oque eu consegui, aqui esta funcionando :/ 

 

Tranquilo maninho, valeu pelo help, mas só sai o dano mesmo do player, mas n da o efeito kk, tmj!

[15:46:21.963] [Error - Spell Interface]
[15:46:21.967] data/spells/scripts/attack/black/1/shukakuball.lua
[15:46:21.969] Description:
[15:46:21.970] (luaSetCombatParam) Combat not found

 

       112674.gif

 

 

 

Link para o post
Compartilhar em outros sites

@Zzyzx sabe que se vc quer o efeito 459, vc tem que por o 458 na script né? só uma dica pq ja sofri disso kk

VlVKQKC.png&key=d5c17620ae9567a1f898dd7a

 

 

 

  • 532144234_Logo_NTO_BLOOD_Finish_HIM_By_Antonio_Luckas(3).png.fd58d1af125a7e82ccdd751637e9ca93.png
Link para o post
Compartilhar em outros sites
Agora, King Laker disse:

@Zzyzx sabe que se vc quer o efeito 459, vc tem que por o 458 na script né? só uma dica pq ja sofri disso kk

 

sim sim, HUEAHUEAHUEH
minha resposta mesclou com a outra ali, da um visu no erro q ta dando na distro.

       112674.gif

 

 

 

Link para o post
Compartilhar em outros sites
4 minutos atrás, Zzyzx disse:

Tranquilo maninho, valeu pelo help, mas só sai o dano mesmo do player, mas n da o efeito kk, tmj!


[15:46:21.963] [Error - Spell Interface]
[15:46:21.967] data/spells/scripts/attack/black/1/shukakuball.lua
[15:46:21.969] Description:
[15:46:21.970] (luaSetCombatParam) Combat not found

 

 

tenta colocar sem o distance effect q vc adicionou

VlVKQKC.png&key=d5c17620ae9567a1f898dd7a

 

 

 

  • 532144234_Logo_NTO_BLOOD_Finish_HIM_By_Antonio_Luckas(3).png.fd58d1af125a7e82ccdd751637e9ca93.png
Link para o post
Compartilhar em outros sites
1 minuto atrás, King Laker disse:

tenta colocar sem o distance effect q vc adicionou

 

DHASUIFHOAUISHFIASUHFUIASHIOFHASFIH

setCombatParam(combat1, COMBAT_PARAM_DISTANCEEFFECT, 159)

tudo por causa desse "1" no combat DUIASHIFUHAISFH

removi e foi normal

       112674.gif

 

 

 

Link para o post
Compartilhar em outros sites

@Zzyzx tenta colocar essa linha em baixo do distance effect, >> setCombatParam(combat, COMBAT_PARAM_EFFECT, 346)

VlVKQKC.png&key=d5c17620ae9567a1f898dd7a

 

 

 

  • 532144234_Logo_NTO_BLOOD_Finish_HIM_By_Antonio_Luckas(3).png.fd58d1af125a7e82ccdd751637e9ca93.png
Link para o post
Compartilhar em outros sites
2 minutos atrás, King Laker disse:

@Zzyzx tenta colocar essa linha em baixo do distance effect, >> setCombatParam(combat, COMBAT_PARAM_EFFECT, 346)

 

Funcionou, mas agora voltamos pro primeiro problema do topico, que nao da pra mudar a posição do efeito kkkkkk

       112674.gif

 

 

 

Link para o post
Compartilhar em outros sites
  • Solução

@Zzyzx tenho uma spell aqui que provavelmente vai ficar dando erro na distro, mas vai funcionar :/ quer?

Spoiler

local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, 29)
setCombatParam(combat, COMBAT_PARAM_EFFECT, 134)
setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -160.1, 1, -230.1, 1)

function onCastSpell(cid, var)
local waittime = 1,5 -- Tempo de exhaustion
local storage = 37011

if exhaustion.check(cid, storage) then

return false
end
local position1 = {x=getThingPosition(getCreatureTarget(cid)).x+1, y=getThingPosition(getCreatureTarget(cid)).y+1, z=getThingPosition(getCreatureTarget(cid)).z}
doSendMagicEffect(position1, 135)
exhaustion.set(cid, storage, waittime)
return doCombat(cid, combat, var)
end

não sei se vc tirar a função de exhaust vá sair o erro da distro mas tenta ai :) ( o erro só da com monstros)

VlVKQKC.png&key=d5c17620ae9567a1f898dd7a

 

 

 

  • 532144234_Logo_NTO_BLOOD_Finish_HIM_By_Antonio_Luckas(3).png.fd58d1af125a7e82ccdd751637e9ca93.png
Link para o post
Compartilhar em outros sites
6 minutos atrás, King Laker disse:

@Zzyzx tenho uma spell aqui que provavelmente vai ficar dando erro na distro, mas vai funcionar :/ quer?

  Ocultar conteúdo

local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, 29)
setCombatParam(combat, COMBAT_PARAM_EFFECT, 134)
setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -160.1, 1, -230.1, 1)

function onCastSpell(cid, var)
local waittime = 1,5 -- Tempo de exhaustion
local storage = 37011

if exhaustion.check(cid, storage) then

return false
end
local position1 = {x=getThingPosition(getCreatureTarget(cid)).x+1, y=getThingPosition(getCreatureTarget(cid)).y+1, z=getThingPosition(getCreatureTarget(cid)).z}
doSendMagicEffect(position1, 135)
exhaustion.set(cid, storage, waittime)
return doCombat(cid, combat, var)
end

não sei se vc tirar a função de exhaust vá sair o erro da distro mas tenta ai :) ( o erro só da com monstros)

 

Funcionou perfeitoooo, perfect, Então, esse exhaust da pra remover? como assim erro com monstros?

       112674.gif

 

 

 

Link para o post
Compartilhar em outros sites

@Zzyzx Sim, da para remover o Exhaust, ele é somente para players, e quando a magia é usada por monstros da um errinho na distro mas nada que vá atrapalhar no servidor ou na magia.

VlVKQKC.png&key=d5c17620ae9567a1f898dd7a

 

 

 

  • 532144234_Logo_NTO_BLOOD_Finish_HIM_By_Antonio_Luckas(3).png.fd58d1af125a7e82ccdd751637e9ca93.png
Link para o post
Compartilhar em outros sites
3 minutos atrás, King Laker disse:

@Zzyzx Sim, da para remover o Exhaust, ele é somente para players, e quando a magia é usada por monstros da um errinho na distro mas nada que vá atrapalhar no servidor ou na magia.

 

Então... ela ta assim no momento, tem como você remover pra mim? eu tentei e acabou parando de funcionar,DHASUIFHUIASHFUIH
é que essa magia é exclusiva pra monstro, então é melhor nao aparecer o erro kkkkkk

 

Spoiler

local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, 157)
setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -160.1, 1, -230.1, 1)

function onCastSpell(cid, var)
local waittime = 1,5 -- Tempo de exhaustion
local storage = 37011

if exhaustion.check(cid, storage) then

return false
end
local position1 = {x=getThingPosition(getCreatureTarget(cid)).x+1, y=getThingPosition(getCreatureTarget(cid)).y+1, z=getThingPosition(getCreatureTarget(cid)).z}
doSendMagicEffect(position1, 346)
return doCombat(cid, combat, var)
end

 

8 minutos atrás, King Laker disse:

@Zzyzx Sim, da para remover o Exhaust, ele é somente para players, e quando a magia é usada por monstros da um errinho na distro mas nada que vá atrapalhar no servidor ou na magia.

 

Maninho, deixei ela assim, ta fluindo, obrigado pelo tempo gasto comigo, e sucesso irmão!!!!!!!!!!!!!!!!!!!
 

Spoiler

local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, 157)
setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -160.1, 1, -230.1, 1)

function onCastSpell(cid, var)
if isPlayer(cid) and exhaustion.check(cid, 2) then
doPlayerSendCancel(cid, "You are exhausted.")
return FALSE
end
local position1 = {x=getThingPosition(getCreatureTarget(cid)).x+1, y=getThingPosition(getCreatureTarget(cid)).y+1, z=getThingPosition(getCreatureTarget(cid)).z}
doSendMagicEffect(position1, 346)
return doCombat(cid, combat, var)
end

 

       112674.gif

 

 

 

Link para o post
Compartilhar em outros sites

@Zzyzx blz mano, boa sorte ai se o servidor ficar on me chama pra jogar ^^

VlVKQKC.png&key=d5c17620ae9567a1f898dd7a

 

 

 

  • 532144234_Logo_NTO_BLOOD_Finish_HIM_By_Antonio_Luckas(3).png.fd58d1af125a7e82ccdd751637e9ca93.png
Link para o post
Compartilhar em outros sites

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.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo