package effect

import (
	"blazing/logic/service/fight/input"
	"blazing/logic/service/fight/node"
)

/**
 * n回合内没有击败，则对方死亡
 */
type Effect62 struct {
	node.EffectNode
	Hide bool // 是否隐藏 正常是命中就可用，镇魂歌是回合数到才可用
}

func init() {
	input.InitSkillEffect(62, &Effect62{
		EffectNode: node.EffectNode{
			Owner: true,
		},
	})

}

func (this *Effect62) OnDamage() bool {

	if this.Hide { //如果本可用

		//直接秒杀对方

	}

	return true
}
func (this *Effect62) TurnEnd(e *input.Input) {
	this.EffectNode.TurnEnd(e) //先调用回合

	if this.Duration(0) != 1 { //说明还没到生效节点
		this.Hide = true //隐藏效果
	}

}

func (e *Effect62) SkillUseEnd(opp *input.Input) {
	if !e.Hide { //如果还在隐藏,就直接返回
		defer e.EffectNode.NotALive() //失效
		e.Input.Death()               //本只死亡

	}

	//否则触发秒杀 在对面使用技能后
	//return true

}

func (e *Effect62) SetArgs(args ...int) {

	e.EffectNode.SetArgs(args...)
	e.EffectNode.Duration(args[0])

}

// 因为对方切精灵,这个效果也要无效掉
func (this *Effect62) OnSwitchIn() bool {
	if this.Hide { //如果还在隐藏,就直接返回
		return true
	}
	//this.GetBattle().Effects[this.GetInput().UserID].RemoveEffect(this)
	//否则触发秒杀 在对面使用技能后
	return true

}
