Ir para conteúdo
  • 0

Wolrd Hell


LucianoOldGms

Pergunta

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

Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0

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
Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...