package effect import "blazing/logic/service/fight/input" // 502. g2. 如果自身死亡, 恢复队友所有体力和PP值 type NewSel502 struct { NewSel0 } // SwitchOut 在拥有者死亡离场时触发;把仍在场的队友体力和 PP 恢复到满值。 func (e *NewSel502) SwitchOut(in *input.Input) bool { owner := e.SourceInput() if owner == nil || in != owner || !e.IsOwner() { return true } currentPet := owner.CurrentPet() if currentPet == nil || currentPet.Info.Hp > 0 { return true } for _, teammate := range owner.LivingTeammates() { pet := teammate.CurrentPet() if pet == nil { continue } pet.Info.Hp = pet.Info.MaxHp teammate.HealPP(-1) } return true } func init() { input.InitEffect(input.EffectType.NewSel, 502, &NewSel502{}) }