From 0d3b0733d2af1becf5c53ebf5565ad9f6fd94306 Mon Sep 17 00:00:00 2001 From: hahwu <31872165+hahwu@users.noreply.github.com> Date: Tue, 14 Jan 2025 10:38:09 +0800 Subject: [PATCH] =?UTF-8?q?=E5=BD=93=E6=A3=8B=E7=9B=98=E4=B8=AD=E6=9C=89?= =?UTF-8?q?=E8=AE=A2=E5=8D=95=E6=A3=8B=E5=AD=90=E6=97=B6=E4=B8=8D=E5=AF=B9?= =?UTF-8?q?=E5=85=B6=E8=BF=9B=E8=A1=8C=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/server/game/mod/order/Order.go | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/server/game/mod/order/Order.go b/src/server/game/mod/order/Order.go index e6a981d9..02087d29 100644 --- a/src/server/game/mod/order/Order.go +++ b/src/server/game/mod/order/Order.go @@ -475,6 +475,9 @@ func (o *OrderMod) CheckSuperOrder() bool { return false } +/* +* 根据能量倍数 调整订单 + */ func (o *OrderMod) ChangeEnergyMul(lv int, Emit []int, EnergyMul int, ChessList []int) { for k, v := range o.OrderList { if v.Type == Preheat_type { // 预热订单 修改倍数时修改棋子等级 @@ -489,15 +492,20 @@ func (o *OrderMod) ChangeEnergyMul(lv int, Emit []int, EnergyMul int, ChessList continue } NeedTrigger := false + HasOne := false for _, vv := range v.MergeId { Lv := mergeDataCfg.GetLvById(vv) if Lv >= EnergyMul+1 && Lv <= EnergyMul+12 { continue } if GoUtil.InArray(vv, ChessList) { - NeedTrigger = true + HasOne = true break } + NeedTrigger = true + } + if HasOne { // 棋盘上有订单中的棋子,不进行修改 + continue } /** 当每次倍数调整(玩家主动调整或因为体力不足跌落)时,在普通订单中(即不包括偷猫订单、超级订单),如果出现超出上下阈值: