571 lines
17 KiB
Go
571 lines
17 KiB
Go
package effect
|
||
|
||
import (
|
||
"blazing/logic/service/fight/action"
|
||
"blazing/logic/service/fight/info"
|
||
"blazing/logic/service/fight/input"
|
||
"blazing/logic/service/fight/node"
|
||
|
||
"github.com/alpacahq/alpacadecimal"
|
||
)
|
||
|
||
// Effect 1473: 消除对手所有护盾效果,消除成功则令对手随机{0}个技能PP值归零
|
||
type Effect1473 struct{ node.EffectNode }
|
||
|
||
func (e *Effect1473) Skill_Use() bool {
|
||
if len(e.Args()) == 0 {
|
||
return true
|
||
}
|
||
cleared := false
|
||
for _, eff := range e.TargetInput().Effects {
|
||
if eff == nil || !eff.Alive() {
|
||
continue
|
||
}
|
||
eff.Alive(false)
|
||
cleared = true
|
||
}
|
||
if cleared {
|
||
randomSkillPPZero(e.TargetInput(), int(e.Args()[0].IntPart()))
|
||
}
|
||
return true
|
||
}
|
||
|
||
// Effect 1474: {0}回合内若自身能力提升状态被消除,每消除1项则附加{1}点固定伤害
|
||
type Effect1474 struct{ node.EffectNode }
|
||
|
||
func (e *Effect1474) Skill_Use() bool {
|
||
eff := e.CarrierInput().InitEffect(input.EffectType.Sub, 1474, e.SideEffectArgs...)
|
||
if eff != nil {
|
||
e.CarrierInput().AddEffect(e.CarrierInput(), eff)
|
||
}
|
||
return true
|
||
}
|
||
|
||
type Effect1474Sub struct {
|
||
RoundEffectArg0Base
|
||
removed int
|
||
}
|
||
|
||
func (e *Effect1474Sub) PropBefer(in *input.Input, prop, level int8) bool {
|
||
if in != e.CarrierInput() || level >= 0 {
|
||
return true
|
||
}
|
||
e.removed++
|
||
e.OpponentInput().Damage(e.CarrierInput(), &info.DamageZone{
|
||
Type: info.DamageType.Fixed,
|
||
Damage: e.Args()[1],
|
||
})
|
||
return true
|
||
}
|
||
|
||
// Effect 1475: {0}回合内自身受到的固定伤害和百分比伤害减少{1}%
|
||
type Effect1475 struct{ node.EffectNode }
|
||
|
||
func (e *Effect1475) Skill_Use() bool {
|
||
eff := e.CarrierInput().InitEffect(input.EffectType.Sub, 1475, e.SideEffectArgs...)
|
||
if eff != nil {
|
||
e.CarrierInput().AddEffect(e.CarrierInput(), eff)
|
||
}
|
||
return true
|
||
}
|
||
|
||
type Effect1475Sub struct{ RoundEffectArg0Base }
|
||
|
||
func (e *Effect1475Sub) DamageDivEx(zone *info.DamageZone) bool {
|
||
if zone == nil || len(e.Args()) < 2 {
|
||
return true
|
||
}
|
||
zone.Damage = zone.Damage.Mul(hundred.Sub(e.Args()[1])).Div(hundred)
|
||
return true
|
||
}
|
||
|
||
// Effect 1476: 使对手全属性-{0},自身体力低于1/{1}时弱化效果翻倍
|
||
type Effect1476 struct{ node.EffectNode }
|
||
|
||
func (e *Effect1476) Skill_Use() bool {
|
||
if len(e.Args()) < 2 {
|
||
return true
|
||
}
|
||
delta := int8(-e.Args()[0].IntPart())
|
||
if e.CarrierInput().CurPet[0].GetHP().Mul(e.Args()[1]).Cmp(e.CarrierInput().CurPet[0].GetMaxHP()) < 0 {
|
||
delta *= 2
|
||
}
|
||
for i := range e.TargetInput().Prop[:] {
|
||
e.TargetInput().SetProp(e.CarrierInput(), int8(i), delta)
|
||
}
|
||
return true
|
||
}
|
||
|
||
// Effect 1477: 消除敌我双方能力提升状态,消除任意一方成功则吸取对手最大体力的1/{0}
|
||
type Effect1477 struct{ node.EffectNode }
|
||
|
||
func (e *Effect1477) Skill_Use() bool {
|
||
if len(e.Args()) == 0 {
|
||
return true
|
||
}
|
||
cleared := false
|
||
for _, target := range []*input.Input{e.CarrierInput(), e.TargetInput()} {
|
||
for _, eff := range target.Effects {
|
||
if eff == nil || !eff.Alive() {
|
||
continue
|
||
}
|
||
eff.Alive(false)
|
||
cleared = true
|
||
}
|
||
}
|
||
if cleared {
|
||
drain := e.TargetInput().CurPet[0].GetMaxHP().Div(e.Args()[0])
|
||
e.TargetInput().Damage(e.CarrierInput(), &info.DamageZone{Type: info.DamageType.Percent, Damage: drain})
|
||
e.CarrierInput().Heal(e.CarrierInput(), &action.SelectSkillAction{}, drain)
|
||
}
|
||
return true
|
||
}
|
||
|
||
// Effect 1478: 下{0}回合令对手无法主动切换精灵
|
||
type Effect1478 struct{ node.EffectNode }
|
||
|
||
func (e *Effect1478) Skill_Use() bool {
|
||
eff := e.CarrierInput().InitEffect(input.EffectType.Sub, 1478, e.SideEffectArgs...)
|
||
if eff != nil {
|
||
e.CarrierInput().AddEffect(e.CarrierInput(), eff)
|
||
}
|
||
return true
|
||
}
|
||
|
||
type Effect1478Sub struct{ RoundEffectArg0Base }
|
||
|
||
func (e *Effect1478Sub) SwitchOut(in *input.Input) bool {
|
||
if in == e.OpponentInput() {
|
||
e.Alive(false)
|
||
}
|
||
return true
|
||
}
|
||
|
||
// Effect 1479: 牺牲自己,消除对手能力提升状态、回合类效果、护盾效果、护罩效果、神耀能量、自然祝福,同时令对手{0}回合内属性技能无效
|
||
type Effect1479 struct{ node.EffectNode }
|
||
|
||
func (e *Effect1479) Skill_Use() bool {
|
||
if len(e.Args()) == 0 {
|
||
return true
|
||
}
|
||
e.CarrierInput().Damage(e.CarrierInput(), &info.DamageZone{Type: info.DamageType.Fixed, Damage: e.CarrierInput().CurPet[0].GetHP()})
|
||
eff := e.CarrierInput().InitEffect(input.EffectType.Sub, 1479, e.SideEffectArgs...)
|
||
if eff != nil {
|
||
e.TargetInput().AddEffect(e.CarrierInput(), eff)
|
||
}
|
||
return true
|
||
}
|
||
|
||
type Effect1479Sub struct{ RoundEffectArg0Base }
|
||
|
||
func (e *Effect1479Sub) SkillHit_ex() bool {
|
||
if e.Ctx().SkillEntity != nil && e.Ctx().SkillEntity.Category() == info.Category.STATUS {
|
||
e.Ctx().SkillEntity.XML.MustHit = 1
|
||
}
|
||
return true
|
||
}
|
||
|
||
// Effect 1480: 附加{0}点固定伤害,每次使用额外附加{1}点,最高{2}点
|
||
type Effect1480 struct {
|
||
node.EffectNode
|
||
extra int64
|
||
}
|
||
|
||
func (e *Effect1480) DamageAdd(zone *info.DamageZone) bool {
|
||
if zone == nil || len(e.Args()) < 3 {
|
||
return true
|
||
}
|
||
base := e.Args()[0]
|
||
add := base.Add(alpacadecimal.NewFromInt(e.extra))
|
||
max := e.Args()[2]
|
||
if add.Cmp(max) > 0 {
|
||
add = max
|
||
}
|
||
zone.Damage = zone.Damage.Add(add)
|
||
e.extra += int64(e.Args()[1].IntPart())
|
||
return true
|
||
}
|
||
|
||
// Effect 1481: {0}%的概率造成伤害翻倍,对手处于能力下降状态时概率翻倍
|
||
type Effect1481 struct{ node.EffectNode }
|
||
|
||
func (e *Effect1481) Damage_Mul(zone *info.DamageZone) bool {
|
||
if zone == nil || zone.Type != info.DamageType.Red || len(e.Args()) == 0 {
|
||
return true
|
||
}
|
||
chance := int(e.Args()[0].IntPart())
|
||
for _, v := range e.OpponentInput().Prop[:] {
|
||
if v < 0 {
|
||
chance *= 2
|
||
break
|
||
}
|
||
}
|
||
if chance > 100 {
|
||
chance = 100
|
||
}
|
||
if ok, _, _ := e.Input.Player.Roll(chance, 100); ok {
|
||
zone.Damage = zone.Damage.Mul(alpacadecimal.NewFromInt(2))
|
||
}
|
||
return true
|
||
}
|
||
|
||
// Effect 1482: {0}%令对手{1},未触发则吸取对手能力提升状态
|
||
type Effect1482 struct{ node.EffectNode }
|
||
|
||
func (e *Effect1482) Skill_Use() bool {
|
||
if len(e.Args()) < 2 {
|
||
return true
|
||
}
|
||
if ok, _, _ := e.Input.Player.Roll(int(e.Args()[0].IntPart()), 100); ok {
|
||
addStatusByID(e.CarrierInput(), e.TargetInput(), int(e.Args()[1].IntPart()))
|
||
return true
|
||
}
|
||
for _, eff := range e.TargetInput().Effects {
|
||
if eff != nil && eff.Alive() {
|
||
eff.Alive(false)
|
||
}
|
||
}
|
||
return true
|
||
}
|
||
|
||
// Effect 1483: 本回合打出致命一击则令对手{0}回合属性技能无效
|
||
type Effect1483 struct{ node.EffectNode }
|
||
|
||
func (e *Effect1483) Skill_Use() bool {
|
||
eff := e.CarrierInput().InitEffect(input.EffectType.Sub, 1483, e.SideEffectArgs...)
|
||
if eff != nil {
|
||
e.CarrierInput().AddEffect(e.CarrierInput(), eff)
|
||
}
|
||
return true
|
||
}
|
||
|
||
type Effect1483Sub struct{ RoundEffectArg0Base }
|
||
|
||
func (e *Effect1483Sub) Skill_Use() bool {
|
||
if e.Ctx().SkillEntity != nil && e.Ctx().SkillEntity.Crit > 0 {
|
||
eff := e.CarrierInput().InitEffect(input.EffectType.Sub, 1483, e.SideEffectArgs...)
|
||
if eff != nil {
|
||
e.TargetInput().AddEffect(e.CarrierInput(), eff)
|
||
}
|
||
}
|
||
return true
|
||
}
|
||
|
||
func (e *Effect1483Sub) SkillHit_ex() bool {
|
||
if e.Ctx().SkillEntity != nil && e.Ctx().SkillEntity.Category() == info.Category.STATUS {
|
||
e.Ctx().SkillEntity.XML.MustHit = 1
|
||
}
|
||
return true
|
||
}
|
||
|
||
// Effect 1484: 体力低于最大体力的1/2时先制+1
|
||
type Effect1484 struct{ node.EffectNode }
|
||
|
||
func (e *Effect1484) ComparePre(fattack, sattack *action.SelectSkillAction) bool {
|
||
if e.CarrierInput().CurPet[0].GetHP().Mul(alpacadecimal.NewFromInt(2)).Cmp(e.CarrierInput().CurPet[0].GetMaxHP()) >= 0 {
|
||
return true
|
||
}
|
||
current := actionByPlayer(fattack, sattack, e.CarrierInput().UserID)
|
||
if current != nil && current.SkillEntity != nil {
|
||
current.SkillEntity.XML.Priority += 1
|
||
}
|
||
return true
|
||
}
|
||
|
||
// Effect 1485: 对手处于能力提升状态则命中后{0}%令对手{1},未触发则{2}%令对手{3}
|
||
type Effect1485 struct{ node.EffectNode }
|
||
|
||
func (e *Effect1485) OnSkill() bool {
|
||
if len(e.Args()) < 4 {
|
||
return true
|
||
}
|
||
boosted := false
|
||
for _, v := range e.TargetInput().Prop[:] {
|
||
if v > 0 {
|
||
boosted = true
|
||
break
|
||
}
|
||
}
|
||
if !boosted {
|
||
return true
|
||
}
|
||
if ok, _, _ := e.Input.Player.Roll(int(e.Args()[0].IntPart()), 100); ok {
|
||
addStatusByID(e.CarrierInput(), e.TargetInput(), int(e.Args()[1].IntPart()))
|
||
return true
|
||
}
|
||
if ok, _, _ := e.Input.Player.Roll(int(e.Args()[2].IntPart()), 100); ok {
|
||
addStatusByID(e.CarrierInput(), e.TargetInput(), int(e.Args()[3].IntPart()))
|
||
}
|
||
return true
|
||
}
|
||
|
||
// Effect 1486: {0}%的概率造成伤害翻倍,自身处于护盾状态时概率翻倍
|
||
type Effect1486 struct{ node.EffectNode }
|
||
|
||
func (e *Effect1486) Damage_Mul(zone *info.DamageZone) bool {
|
||
if zone == nil || zone.Type != info.DamageType.Red || len(e.Args()) == 0 {
|
||
return true
|
||
}
|
||
chance := int(e.Args()[0].IntPart())
|
||
if e.CarrierInput().HasShield() {
|
||
chance *= 2
|
||
}
|
||
if chance > 100 {
|
||
chance = 100
|
||
}
|
||
if ok, _, _ := e.Input.Player.Roll(chance, 100); ok {
|
||
zone.Damage = zone.Damage.Mul(alpacadecimal.NewFromInt(2))
|
||
}
|
||
return true
|
||
}
|
||
|
||
// Effect 1487: 自身处于护盾状态下先制+1
|
||
type Effect1487 struct{ node.EffectNode }
|
||
|
||
func (e *Effect1487) ComparePre(fattack, sattack *action.SelectSkillAction) bool {
|
||
if !e.CarrierInput().HasShield() {
|
||
return true
|
||
}
|
||
current := actionByPlayer(fattack, sattack, e.CarrierInput().UserID)
|
||
if current != nil && current.SkillEntity != nil {
|
||
current.SkillEntity.XML.Priority += 1
|
||
}
|
||
return true
|
||
}
|
||
|
||
// Effect 1488: 遇到天敌时{0}%令对手{1}
|
||
type Effect1488 struct{ node.EffectNode }
|
||
|
||
func (e *Effect1488) OnSkill() bool {
|
||
if !e.ISNaturalEnemy() || len(e.Args()) < 2 {
|
||
return true
|
||
}
|
||
if ok, _, _ := e.Input.Player.Roll(int(e.Args()[0].IntPart()), 100); ok {
|
||
addStatusByID(e.CarrierInput(), e.TargetInput(), int(e.Args()[1].IntPart()))
|
||
}
|
||
return true
|
||
}
|
||
|
||
// Effect 1489: 若对手为自身天敌则{0}%令对手{1},未触发则令自身{2}回合内{3}%闪避对手攻击
|
||
type Effect1489 struct{ node.EffectNode }
|
||
|
||
func (e *Effect1489) OnSkill() bool {
|
||
if len(e.Args()) < 4 || !e.ISNaturalEnemy() {
|
||
return true
|
||
}
|
||
if ok, _, _ := e.Input.Player.Roll(int(e.Args()[0].IntPart()), 100); ok {
|
||
addStatusByID(e.CarrierInput(), e.TargetInput(), int(e.Args()[1].IntPart()))
|
||
return true
|
||
}
|
||
eff := e.CarrierInput().InitEffect(input.EffectType.Sub, 1489, e.SideEffectArgs...)
|
||
if eff != nil {
|
||
e.CarrierInput().AddEffect(e.CarrierInput(), eff)
|
||
}
|
||
return true
|
||
}
|
||
|
||
type Effect1489Sub struct{ RoundEffectArg0Base }
|
||
|
||
func (e *Effect1489Sub) SkillHit_ex() bool {
|
||
if e.Ctx().SkillEntity == nil || e.Ctx().SkillEntity.Category() == info.Category.STATUS {
|
||
return true
|
||
}
|
||
if ok, _, _ := e.Input.Player.Roll(int(e.Args()[3].IntPart()), 100); ok {
|
||
e.Ctx().SkillEntity.XML.MustHit = 1
|
||
}
|
||
return true
|
||
}
|
||
|
||
// Effect 1490: 若对手为自身天敌则{0}%令对手{1},未触发则对手{2}回合内属性技能命中效果失效
|
||
type Effect1490 struct{ node.EffectNode }
|
||
|
||
func (e *Effect1490) OnSkill() bool {
|
||
if len(e.Args()) < 3 || !e.ISNaturalEnemy() {
|
||
return true
|
||
}
|
||
if ok, _, _ := e.Input.Player.Roll(int(e.Args()[0].IntPart()), 100); ok {
|
||
addStatusByID(e.CarrierInput(), e.TargetInput(), int(e.Args()[1].IntPart()))
|
||
return true
|
||
}
|
||
eff := e.CarrierInput().InitEffect(input.EffectType.Sub, 1490, e.SideEffectArgs...)
|
||
if eff != nil {
|
||
e.TargetInput().AddEffect(e.CarrierInput(), eff)
|
||
}
|
||
return true
|
||
}
|
||
|
||
type Effect1490Sub struct{ RoundEffectArg0Base }
|
||
|
||
func (e *Effect1490Sub) SkillHit_ex() bool {
|
||
if e.Ctx().SkillEntity != nil && e.Ctx().SkillEntity.Category() == info.Category.STATUS {
|
||
e.Ctx().SkillEntity.XML.MustHit = 1
|
||
}
|
||
return true
|
||
}
|
||
|
||
// Effect 1491: 遇到天敌时先制+1
|
||
type Effect1491 struct{ node.EffectNode }
|
||
|
||
func (e *Effect1491) ComparePre(fattack, sattack *action.SelectSkillAction) bool {
|
||
if !e.ISNaturalEnemy() {
|
||
return true
|
||
}
|
||
current := actionByPlayer(fattack, sattack, e.CarrierInput().UserID)
|
||
if current != nil && current.SkillEntity != nil {
|
||
current.SkillEntity.XML.Priority += 1
|
||
}
|
||
return true
|
||
}
|
||
|
||
// Effect 1492: 对手处于能力下降状态时随机附加{0}种异常状态
|
||
type Effect1492 struct{ node.EffectNode }
|
||
|
||
func (e *Effect1492) OnSkill() bool {
|
||
if len(e.Args()) == 0 {
|
||
return true
|
||
}
|
||
down := false
|
||
for _, v := range e.TargetInput().Prop[:] {
|
||
if v < 0 {
|
||
down = true
|
||
break
|
||
}
|
||
}
|
||
if !down {
|
||
return true
|
||
}
|
||
applyRandomStatuses1507(e.CarrierInput(), e.TargetInput(), int(e.Args()[0].IntPart()))
|
||
return true
|
||
}
|
||
|
||
// Effect 1493: 消耗自身所有体力,令自身下只登场精灵3回合内免疫异常状态,若自身下只登场精灵为月照星魂则转变为5回合
|
||
type Effect1493 struct{ node.EffectNode }
|
||
|
||
func (e *Effect1493) Skill_Use() bool {
|
||
e.CarrierInput().Damage(e.CarrierInput(), &info.DamageZone{Type: info.DamageType.Fixed, Damage: e.CarrierInput().CurPet[0].GetHP()})
|
||
eff := e.CarrierInput().InitEffect(input.EffectType.Sub, 1493)
|
||
if eff != nil {
|
||
e.CarrierInput().AddEffect(e.CarrierInput(), eff)
|
||
}
|
||
return true
|
||
}
|
||
|
||
type Effect1493Sub struct{ node.EffectNode }
|
||
|
||
func (e *Effect1493Sub) SwitchIn(in *input.Input) bool {
|
||
if in != e.CarrierInput() {
|
||
return true
|
||
}
|
||
e.Duration(3)
|
||
return true
|
||
}
|
||
|
||
// Effect 1494: 自身满体力时{0}%令对手随机{1}个技能PP值归零
|
||
type Effect1494 struct{ node.EffectNode }
|
||
|
||
func (e *Effect1494) OnSkill() bool {
|
||
if len(e.Args()) < 2 || e.CarrierInput().CurPet[0].GetHP().Cmp(e.CarrierInput().CurPet[0].GetMaxHP()) != 0 {
|
||
return true
|
||
}
|
||
if ok, _, _ := e.Input.Player.Roll(int(e.Args()[0].IntPart()), 100); ok {
|
||
randomSkillPPZero(e.TargetInput(), int(e.Args()[1].IntPart()))
|
||
}
|
||
return true
|
||
}
|
||
|
||
// Effect 1495: 反转对手能力提升状态,反转成功则{0}%令对手随机{1}个技能PP值归零
|
||
type Effect1495 struct{ node.EffectNode }
|
||
|
||
func (e *Effect1495) Skill_Use() bool {
|
||
if len(e.Args()) < 2 {
|
||
return true
|
||
}
|
||
swapped := false
|
||
for _, i := range e.TargetInput().Prop[:] {
|
||
if i > 0 {
|
||
swapped = true
|
||
break
|
||
}
|
||
}
|
||
if !swapped {
|
||
return true
|
||
}
|
||
if ok, _, _ := e.Input.Player.Roll(int(e.Args()[0].IntPart()), 100); ok {
|
||
randomSkillPPZero(e.TargetInput(), int(e.Args()[1].IntPart()))
|
||
}
|
||
return true
|
||
}
|
||
|
||
// Effect 1496: 消耗自身全部体力,使自身下只出场精灵获得{0}点的护盾且{1}回合内每回合结束时恢复{2}点体力
|
||
type Effect1496 struct{ node.EffectNode }
|
||
|
||
func (e *Effect1496) Skill_Use() bool {
|
||
if len(e.Args()) < 3 {
|
||
return true
|
||
}
|
||
e.CarrierInput().Damage(e.CarrierInput(), &info.DamageZone{Type: info.DamageType.Fixed, Damage: e.CarrierInput().CurPet[0].GetHP()})
|
||
e.CarrierInput().AddShield(e.Args()[0])
|
||
eff := e.CarrierInput().InitEffect(input.EffectType.Sub, 1496, e.SideEffectArgs...)
|
||
if eff != nil {
|
||
e.CarrierInput().AddEffect(e.CarrierInput(), eff)
|
||
}
|
||
return true
|
||
}
|
||
|
||
type Effect1496Sub struct{ RoundEffectArg0Base }
|
||
|
||
func (e *Effect1496Sub) TurnEnd() {
|
||
if len(e.Args()) >= 3 {
|
||
e.CarrierInput().Heal(e.CarrierInput(), &action.SelectSkillAction{}, e.Args()[2])
|
||
}
|
||
e.EffectNode.TurnEnd()
|
||
}
|
||
|
||
// Effect 1497: 恢复自身n点体力(n=双方当前护盾值总和)
|
||
type Effect1497 struct{ node.EffectNode }
|
||
|
||
func (e *Effect1497) Skill_Use() bool {
|
||
heal := e.CarrierInput().CurrentShield().Add(e.TargetInput().CurrentShield())
|
||
if heal.Cmp(alpacadecimal.Zero) > 0 {
|
||
e.CarrierInput().Heal(e.CarrierInput(), &action.SelectSkillAction{}, heal)
|
||
}
|
||
return true
|
||
}
|
||
|
||
func init() {
|
||
input.InitEffect(input.EffectType.Skill, 1473, &Effect1473{})
|
||
input.InitEffect(input.EffectType.Skill, 1474, &Effect1474{})
|
||
input.InitEffect(input.EffectType.Sub, 1474, &Effect1474Sub{})
|
||
input.InitEffect(input.EffectType.Skill, 1475, &Effect1475{})
|
||
input.InitEffect(input.EffectType.Sub, 1475, &Effect1475Sub{})
|
||
input.InitEffect(input.EffectType.Skill, 1476, &Effect1476{})
|
||
input.InitEffect(input.EffectType.Skill, 1477, &Effect1477{})
|
||
input.InitEffect(input.EffectType.Skill, 1478, &Effect1478{})
|
||
input.InitEffect(input.EffectType.Sub, 1478, &Effect1478Sub{})
|
||
input.InitEffect(input.EffectType.Skill, 1479, &Effect1479{})
|
||
input.InitEffect(input.EffectType.Sub, 1479, &Effect1479Sub{})
|
||
input.InitEffect(input.EffectType.Skill, 1480, &Effect1480{})
|
||
input.InitEffect(input.EffectType.Skill, 1481, &Effect1481{})
|
||
input.InitEffect(input.EffectType.Skill, 1482, &Effect1482{})
|
||
input.InitEffect(input.EffectType.Skill, 1483, &Effect1483{})
|
||
input.InitEffect(input.EffectType.Sub, 1483, &Effect1483Sub{})
|
||
input.InitEffect(input.EffectType.Skill, 1484, &Effect1484{})
|
||
input.InitEffect(input.EffectType.Skill, 1485, &Effect1485{})
|
||
input.InitEffect(input.EffectType.Skill, 1486, &Effect1486{})
|
||
input.InitEffect(input.EffectType.Skill, 1487, &Effect1487{})
|
||
input.InitEffect(input.EffectType.Skill, 1488, &Effect1488{})
|
||
input.InitEffect(input.EffectType.Skill, 1489, &Effect1489{})
|
||
input.InitEffect(input.EffectType.Sub, 1489, &Effect1489Sub{})
|
||
input.InitEffect(input.EffectType.Skill, 1490, &Effect1490{})
|
||
input.InitEffect(input.EffectType.Sub, 1490, &Effect1490Sub{})
|
||
input.InitEffect(input.EffectType.Skill, 1491, &Effect1491{})
|
||
input.InitEffect(input.EffectType.Skill, 1492, &Effect1492{})
|
||
input.InitEffect(input.EffectType.Skill, 1493, &Effect1493{})
|
||
input.InitEffect(input.EffectType.Sub, 1493, &Effect1493Sub{})
|
||
input.InitEffect(input.EffectType.Skill, 1494, &Effect1494{})
|
||
input.InitEffect(input.EffectType.Skill, 1495, &Effect1495{})
|
||
input.InitEffect(input.EffectType.Skill, 1496, &Effect1496{})
|
||
input.InitEffect(input.EffectType.Sub, 1496, &Effect1496Sub{})
|
||
input.InitEffect(input.EffectType.Skill, 1497, &Effect1497{})
|
||
}
|