Files
bl/logic/service/fight/effect/effect_status.go

37 lines
802 B
Go

package effect
import (
"blazing/logic/service/fight/info"
"blazing/logic/service/fight/input"
"blazing/logic/service/fight/node"
)
// 施加一个基类effect
type EffectStatus struct {
node.EffectNode
Status info.EnumBattleStatus
}
type EffectStatusNotSkill struct {
EffectStatus
}
func (e *EffectStatusNotSkill) CanSkill(opp *input.Input) bool {
return false
}
func init() {
//麻痹,疲惫,害怕,石化,都是无法行动
tt := func(t info.EnumBattleStatus, f *EffectStatusNotSkill) {
f.Status = t
input.InitEffect(input.EffectType.Status, int(t), f)
}
tt(info.PetStatus.Paralysis, &EffectStatusNotSkill{})
tt(info.PetStatus.Tired, &EffectStatusNotSkill{})
tt(info.PetStatus.Sleep, &EffectStatusNotSkill{})
tt(info.PetStatus.Petrified, &EffectStatusNotSkill{})
}