Untitled

mail@pastecode.io avatar
unknown
lua
a year ago
2.1 kB
2
Indexable
Never
local config = {
	
	increaseLifeLeech = 20,
	increaseLifeLeechChance = 20,
	increaseKatanaSkillsPercent = 50,
	increaseSpeed = 25,
	subIdAttributes = 77,

	duration = 15 -- # seconds
}

local condition = Condition(CONDITION_ATTRIBUTES)
condition:setParameter(CONDITION_PARAM_SUBID, config.subIdAttributes)
condition:setParameter(CONDITION_PARAM_TICKS, config.duration * 1000)

condition:setParameter(CONDITION_PARAM_SPECIALSKILL_LIFELEECHCHANCE, config.increaseLifeLeechChance)
condition:setParameter(CONDITION_PARAM_SPECIALSKILL_LIFELEECHAMOUNT, config.increaseLifeLeech)
condition:setParameter(CONDITION_PARAM_SKILL_KATANAPERCENT, config.increaseKatanaSkillsPercent)
condition:setParameter(CONDITION_PARAM_BUFF_SPELL, true)

local combat = Combat()
combat:setParameter(COMBAT_PARAM_EFFECT, CONST_ME_GROUNDSHAKER)
combat:setParameter(COMBAT_PARAM_AGGRESSIVE, 0)
combat:addCondition(condition)

local speed = Condition(CONDITION_HASTE)
speed:setParameter(CONDITION_PARAM_SUBID, config.subIdAttributes)
speed:setParameter(CONDITION_PARAM_TICKS, config.duration * 1000)
speed:setFormula(config.increaseSpeed / 100, 0, config.increaseSpeed / 100, 0)
combat:addCondition(speed)

local spell = Spell(SPELL_INSTANT)
function spell.onCastSpell(caster, variant)

	if caster:getCondition(CONDITION_ATTRIBUTES, CONDITIONID_COMBAT, config.subIdAttributes) then
		caster:removeCondition(CONDITION_ATTRIBUTES, CONDITIONID_COMBAT, config.subIdAttributes)
	end

	if caster:getCondition(CONDITION_HASTE, CONDITIONID_COMBAT, config.subIdAttributes) then
		caster:removeCondition(CONDITION_HASTE, CONDITIONID_COMBAT, config.subIdAttributes)
	end

	return combat:execute(caster, variant)
end

-- # pending update
spell:name("Hasashi Blade")
spell:words("utana blade")
spell:group("support")
spell:vocation("knight;true", "elite knight;true", "sorcerer;true")
spell:id(133)
spell:cooldown(2 * 1000)
spell:groupCooldown(2 * 1000, 2 * 1000)
spell:level(60)
spell:mana(290)
spell:isSelfTarget(true)
spell:isAggressive(false)
spell:isPremium(false)
spell:needLearn(false)
spell:register()