LO

[Spell] Masterpiece Knight

Por Lordfire, 11 de dez. de 2009 em Globalevents e Spells

tibia
script
otserv
3
1.6k
LordfireL
11 de dezembro de 2009 às 20:16

É um buff extremo para knights. Deixa ele totalmente paralizado, triplica o shielding mas bloqueia os ataques, isso tudo durante 1 minuto. Criada para, por exemplo, ao blockar um boss muito forte. Ainda assim, ele pode castar magias.

 

Salve como mpk.lua na pasta scripts

-- Planned by Lordfire

-- Thanks to ta4e and iRockStar

-- Apague as frases que começam com dois traços depois de editar a magia.

local combat = createCombatObject()

setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_ENERGYHIT)

setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, 0)

-- Início do buff

local buff = createConditionObject(CONDITION_ATTRIBUTES)

setConditionParam(buff, CONDITION_PARAM_SKILL_MELEEPERCENT, -100)

setConditionParam(buff, CONDITION_PARAM_SKILL_SHIELDPERCENT, 300)

setConditionParam(buff, CONDITION_PARAM_BUFF, true)

setConditionParam(buff, CONDITION_PARAM_TICKS, 60000)

setCombatCondition(combat, buff)

-- Fim do buff

-- Paralização total

local haste = createConditionObject(CONDITION_HASTE)

setConditionParam(haste, CONDITION_PARAM_TICKS, 60000)

setConditionFormula(haste, -1, 0, -1, 0)

setCombatCondition(combat, haste)

-- Fim da paralização total

-- Bloqueio de ataques

local disable = createConditionObject(CONDITION_PACIFIED)

setConditionParam(disable, CONDITION_PARAM_TICKS, 60000)

setCombatCondition(combat, disable)

-- Fim do bloqueio de ataques

 

function onCastSpell(cid, var)

return doCombat(cid, combat, var)

end

 

Spells.xml

<instant name="Masterpiece Knight" words="utito grav tempo" lvl="55" mana="580" prem="1" aggressive="0" selftarget="1" exhaustion="60000" needlearn="0" event="script" value="mpk.lua">

<vocation id="8"/>

</instant>

 

 

 

Também fiz um cancelador da spell (caso o knight não precise mais):

cancelmpk.lua

-- Planned by Lordfire

-- Thanks to ta4e and iRockStar

-- Apague as frases que começam com dois traços depois de editar a magia.

local combat = createCombatObject()

setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_ENERGYHIT)

setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, 0)

-- Início do buff

local buff = createConditionObject(CONDITION_ATTRIBUTES)

setConditionParam(buff, CONDITION_PARAM_SKILL_MELEEPERCENT, 100)

setConditionParam(buff, CONDITION_PARAM_SKILL_SHIELDPERCENT, 100)

setCombatCondition(combat, buff)

-- Fim do buff

-- Paralização total

local haste = createConditionObject(CONDITION_HASTE)

setConditionFormula(haste, 1, 0, 1, 0)

setCombatCondition(combat, haste)

-- Fim da paralização total

-- Bloqueio de ataques

local disable = createConditionObject(CONDITION_PACIFIED)

setConditionParam(disable, CONDITION_PARAM_TICKS, 0)

setCombatCondition(combat, disable)

-- Fim do bloqueio de ataques

 

function onCastSpell(cid, var)

return doCombat(cid, combat, var)

end

 

Spells.xml (pra quem não sabe, "tergo" seria "voltar" em spells do Tibia)

<instant name="Cancel Masterpiece Knight" words="utito tergo" lvl="55" mana="580" prem="1" aggressive="0" selftarget="1" exhaustion="60000" needlearn="0" event="script" value="mpk.lua">

<vocation id="8"/>

</instant>

 

Se for postar, mesmo que só o cancelador de buffs, em qualquer outro lugar, por favor me avise. Eu deixo sem complicações, só quero saber onde minha spell será postada e por quem.

Editado Dezembro 11 por Lordfire

rockstar96R
11 de dezembro de 2009 às 21:20
-- Thanks to ta4e and iRockStar

 

O quê eu fiz amigo?

gkaonicx72G
12 de dezembro de 2009 às 11:52

Opa interessante a magia porem 1 minuto não seria muito? Do mesmo jeito parabéns pelo script e obrigado por trazer novo conteúdo ao Xtibia.

Até mais.