38 lines
751 B
Go
38 lines
751 B
Go
package effect
|
|
|
|
import (
|
|
"blazing/logic/service/fight/info"
|
|
"blazing/logic/service/fight/input"
|
|
|
|
"github.com/alpacahq/alpacadecimal"
|
|
)
|
|
|
|
// todo "只有当自己处于异常状态时才会受到伤害"
|
|
type NewSel113 struct {
|
|
NewSel0
|
|
count int
|
|
}
|
|
|
|
func (e *NewSel113) DamageLockEx(t *info.DamageZone) bool {
|
|
//魂印特性有不在场的情况,绑定时候将精灵和特性绑定
|
|
if e.ID().GetCatchTime() != e.Ctx().Our.CurrentPet.Info.CatchTime {
|
|
return true
|
|
}
|
|
if t.Type != info.DamageType.Red {
|
|
return true
|
|
}
|
|
for _, v := range e.Ctx().Our.Effects {
|
|
if v.Alive() && input.IS_Stat(v) {
|
|
|
|
return true
|
|
}
|
|
|
|
}
|
|
|
|
t.Damage = alpacadecimal.Zero
|
|
return true
|
|
}
|
|
func init() {
|
|
input.InitEffect(input.EffectType.NewSel, 113, &NewSel113{})
|
|
}
|