LU
spell

Wolrd Hell

Por LucianoOldGms, 01 de set. de 2013 em Scripts

resolvido
5
1.3k
01 de setembro de 2013 às 00:43

estou com problemas com uma spell, ele deve ter efeito duplo escrevendo "HELL" com efeito "death" cercada por fogo, porém, consegui o efeito... mas praticamente nao existe exhausted e gasto de mana, analizem, preciso de ajuda

local combat1 = createCombatObject()
setCombatParam(combat1, COMBAT_PARAM_TYPE, 1)
setCombatParam(combat1, COMBAT_PARAM_EFFECT, 17)
setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -8, -12, -12, -20)

local combat2 = createCombatObject()
setCombatParam(combat2, COMBAT_PARAM_TYPE, 1)
setCombatParam(combat2, COMBAT_PARAM_EFFECT, 36)
setCombatFormula(combat2, COMBAT_FORMULA_LEVELMAGIC, -8, -12, -12, -20)

local arr1 = {
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 0},
{0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{1, 1, 0, 1, 1, 0, 1, 1, 1, 0, 1, 0, 1},
{0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0, 1},
{0, 1, 0, 0, 1, 0, 3, 1, 1, 0, 1, 1, 1},
{0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0, 1},
{0, 1, 0, 0, 1, 0, 1, 1, 1, 0, 1, 0, 1},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0},
{0, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}
local arr2 = {
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0},
{0, 0, 1, 0, 1, 0, 1, 0, 0, 0, 1, 0, 0},
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
{0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0},
{1, 0, 1, 1, 0, 1, 1, 1, 0, 1, 0, 1, 0},
{1, 0, 1, 1, 0, 1, 3, 0, 0, 1, 0, 0, 0},
{1, 0, 1, 1, 0, 1, 1, 1, 0, 1, 0, 1, 0},
{1, 0, 1, 1, 0, 1, 0, 0, 0, 1, 0, 1, 0},
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
{0, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 1, 0},
{0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}


local area1 = createCombatArea(arr1)
local area2 = createCombatArea(arr2)

setCombatArea(combat1, area1)
setCombatArea(combat2, area2)

local function onCastSpell1(parameters)
doCombat(parameters.cid, parameters.combat1, parameters.var)
end

local function onCastSpell2(parameters)
doCombat(parameters.cid, parameters.combat2, parameters.var)
end


function onCastSpell(cid, var)
local parameters = { cid = cid, var = var,combat1 = combat1,combat2 = combat2}

doCreatureSay(cid, "exevo gran mas hell", TALKTYPE_ORANGE_1)

addEvent(onCastSpell1, 0, parameters)
addEvent(onCastSpell2, 0, parameters)
end

é isso, ela funciona, mas nao como deve, tam sem limitação no uso, e gasto 0 de mana

aguinho600A
01 de setembro de 2013 às 01:15

Se não me engano, essas coisas que você citou são configuradas no "spells.xml", algo assim...

OmegaO
03 de setembro de 2013 às 00:36

Se não me engano, essas coisas que você citou são configuradas no "spells.xml", algo assim...

 

 

 

estou com problemas com uma spell, ele deve ter efeito duplo escrevendo "HELL" com efeito "death" cercada por fogo, porém, consegui o efeito... mas praticamente nao existe exhausted e gasto de mana, analizem, preciso de ajuda

local combat1 = createCombatObject()
setCombatParam(combat1, COMBAT_PARAM_TYPE, 1)
setCombatParam(combat1, COMBAT_PARAM_EFFECT, 17)
setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -8, -12, -12, -20)

local combat2 = createCombatObject()
setCombatParam(combat2, COMBAT_PARAM_TYPE, 1)
setCombatParam(combat2, COMBAT_PARAM_EFFECT, 36)
setCombatFormula(combat2, COMBAT_FORMULA_LEVELMAGIC, -8, -12, -12, -20)

local arr1 = {
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 0},
{0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{1, 1, 0, 1, 1, 0, 1, 1, 1, 0, 1, 0, 1},
{0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0, 1},
{0, 1, 0, 0, 1, 0, 3, 1, 1, 0, 1, 1, 1},
{0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0, 1},
{0, 1, 0, 0, 1, 0, 1, 1, 1, 0, 1, 0, 1},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0},
{0, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}
local arr2 = {
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0},
{0, 0, 1, 0, 1, 0, 1, 0, 0, 0, 1, 0, 0},
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
{0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0},
{1, 0, 1, 1, 0, 1, 1, 1, 0, 1, 0, 1, 0},
{1, 0, 1, 1, 0, 1, 3, 0, 0, 1, 0, 0, 0},
{1, 0, 1, 1, 0, 1, 1, 1, 0, 1, 0, 1, 0},
{1, 0, 1, 1, 0, 1, 0, 0, 0, 1, 0, 1, 0},
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
{0, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 1, 0},
{0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}


local area1 = createCombatArea(arr1)
local area2 = createCombatArea(arr2)

setCombatArea(combat1, area1)
setCombatArea(combat2, area2)

local function onCastSpell1(parameters)
doCombat(parameters.cid, parameters.combat1, parameters.var)
end

local function onCastSpell2(parameters)
doCombat(parameters.cid, parameters.combat2, parameters.var)
end


function onCastSpell(cid, var)
local parameters = { cid = cid, var = var,combat1 = combat1,combat2 = combat2}

doCreatureSay(cid, "exevo gran mas hell", TALKTYPE_ORANGE_1)

addEvent(onCastSpell1, 0, parameters)
addEvent(onCastSpell2, 0, parameters)
end

é isso, ela funciona, mas nao como deve, tam sem limitação no uso, e gasto 0 de mana

 

 

O cara tá certo, isso é em spells.xml, mas se quiser adicionar por fora, faz assim:

function onCastSpell(cid, var)
	local mana = 100
	local exhaust = 5
	local storage = 13055
	if getCreatureMana(cid) > mana then
		if getPlayerStorageValue(cid,storage) < os.time(t) then
			local parameters = { cid = cid, var = var,combat1 = combat1,combat2 = combat2}
			doCreatureSay(cid, "exevo gran mas hell", TALKTYPE_ORANGE_1)
			addEvent(onCastSpell1, 0, parameters)
			addEvent(onCastSpell2, 0, parameters)
			setPlayerStorageValue(cid,storage,os.time(t) + exhaust)
		else
			doPlayerSendCancel(cid,'You are exhausted.')
			doSendMagicEffect(getCreaturePosition(cid),2)
		end
	else
		doPlayerSendCancel(cid,'You don\'t have enough mana.')
		doSendMagicEffect(getCreaturePosition(cid),2)
	end
end
3 semanas depois...
AlexclusiveA
22 de setembro de 2013 às 14:40

Movido para pedidos e duvidas - Scripting.

 

Mais atenção da próxima vez amigo.

 

Atenciosamente,

Alexandre.

1 mês depois...
OmegaO
31 de outubro de 2013 às 17:49

Tópico movido para a seção de dúvidas e pedidos resolvidos.