34 lines
717 B
Go
34 lines
717 B
Go
package effect
|
||
|
||
import (
|
||
"blazing/logic/service/fight/info"
|
||
"blazing/logic/service/fight/input"
|
||
"blazing/logic/service/fight/node"
|
||
|
||
"github.com/alpacahq/alpacadecimal"
|
||
)
|
||
|
||
func init() {
|
||
input.InitEffect(input.EffectType.Skill, 82, &Effect82{})
|
||
|
||
}
|
||
|
||
// Effect 82: 目标为雄性,伤害为200%;目标为雌性,伤害为50%
|
||
type Effect82 struct {
|
||
node.EffectNode
|
||
can bool
|
||
}
|
||
|
||
func (e *Effect82) Damage_Mul(t *info.DamageZone) bool {
|
||
if t.Type != info.DamageType.Red {
|
||
return true
|
||
}
|
||
if e.Ctx().Opp.CurrentPet.Info.Gender == 1 {
|
||
t.Damage = t.Damage.Mul(alpacadecimal.NewFromInt(2))
|
||
}
|
||
if e.Ctx().Opp.CurrentPet.Info.Gender == 2 {
|
||
t.Damage = t.Damage.Div(alpacadecimal.NewFromInt(2))
|
||
}
|
||
return true
|
||
}
|