From 17103cbc9a3f130ef01b45926b92b28bfe8db06e Mon Sep 17 00:00:00 2001 From: xinian Date: Fri, 6 Mar 2026 10:23:07 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=B7=BB=E5=8A=A0=E6=88=98=E6=96=97?= =?UTF-8?q?=E6=95=88=E6=9E=9C126=E5=92=8C284?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- logic/service/fight/boss/NewSeIdx_126.go | 25 +++++++++++++++++++++++ logic/service/fight/boss/NewSeIdx_284.go | 26 ++++++++++++++++++++++++ 2 files changed, 51 insertions(+) create mode 100644 logic/service/fight/boss/NewSeIdx_126.go create mode 100644 logic/service/fight/boss/NewSeIdx_284.go diff --git a/logic/service/fight/boss/NewSeIdx_126.go b/logic/service/fight/boss/NewSeIdx_126.go new file mode 100644 index 000000000..571854256 --- /dev/null +++ b/logic/service/fight/boss/NewSeIdx_126.go @@ -0,0 +1,25 @@ +package effect + +import ( + "blazing/logic/service/fight/action" + "blazing/logic/service/fight/input" + + "github.com/alpacahq/alpacadecimal" +) + +// 126. 给一种 battle_attr 增加固定 n/100 点属性值;(a1: battle_attr, a2: n) +type NewSel126 struct { + NewSel0 +} + +func (e *NewSel126) TurnStart(fattack *action.SelectSkillAction, sattack *action.SelectSkillAction) { + p := e.Ctx().Our.CurrentPet.Info.Prop[int(e.Args()[0].IntPart())] + e.Ctx().Our.CurrentPet.Info.Prop[int(e.Args()[0].IntPart())] += uint32(e.Args()[1].Div(alpacadecimal.NewFromInt(100).Mul(alpacadecimal.NewFromInt(int64(p)))).IntPart()) +} +func (e *NewSel126) TurnEnd() { + p := e.Ctx().Our.CurrentPet.Info.Prop[int(e.Args()[0].IntPart())] + e.Ctx().Our.CurrentPet.Info.Prop[int(e.Args()[0].IntPart())] -= uint32(e.Args()[1].Div(alpacadecimal.NewFromInt(100).Mul(alpacadecimal.NewFromInt(int64(p)))).IntPart()) +} +func init() { + input.InitEffect(input.EffectType.NewSel, 126, &NewSel126{}) +} diff --git a/logic/service/fight/boss/NewSeIdx_284.go b/logic/service/fight/boss/NewSeIdx_284.go new file mode 100644 index 000000000..c19c4cd78 --- /dev/null +++ b/logic/service/fight/boss/NewSeIdx_284.go @@ -0,0 +1,26 @@ +package effect + +import ( + "blazing/logic/service/fight/input" +) + +// T284. +type NewSel284 struct { + NewSel0 +} + +func (e *NewSel284) SkillHit_ex() bool { + if e.ID().GetCatchTime() != e.Ctx().Our.CurrentPet.Info.CatchTime { + return true + } + + if e.Ctx().SkillEntity.Priority <= 0 { + return true + } + e.Ctx().SkillEntity.SetNoSide() + + return true +} +func init() { + input.InitEffect(input.EffectType.NewSel, 284, &NewSel284{}) +}