From 4ba8fe32c4f9057cd7c64cdcfa910e75e20bced3 Mon Sep 17 00:00:00 2001 From: xinian Date: Sat, 21 Mar 2026 01:06:59 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=B7=BB=E5=8A=A0BossConfig=E6=88=98?= =?UTF-8?q?=E8=83=9C=E8=A7=84=E5=88=99=E5=AD=97=E6=AE=B5=E5=B9=B6=E7=A7=BB?= =?UTF-8?q?=E9=99=A4MapNode=E5=86=97=E4=BD=99=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- logic/controller/fight_boss野怪和地图怪.go | 4 ++-- modules/config/model/boss_pet.go | 6 +++--- modules/config/model/map_node.go | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/logic/controller/fight_boss野怪和地图怪.go b/logic/controller/fight_boss野怪和地图怪.go index 0cec2ac57..621a44b4b 100644 --- a/logic/controller/fight_boss野怪和地图怪.go +++ b/logic/controller/fight_boss野怪和地图怪.go @@ -101,7 +101,7 @@ func (Controller) PlayerFightBoss(data1 *fight.ChallengeBossInboundInfo, p *play var fighc *fight.FightC fighc, _ = fight.NewFight(p, ai, func(foi model.FightOverInfo) { if mdata.WinBonusID != 0 { - if len(mdata.Rule) == 0 { + if len(bosinfo[0].Rule) == 0 { if foi.Reason == 0 && foi.WinnerId == p.Info.UserID { p.SptCompletedTask(mdata.WinBonusID, 1) @@ -109,7 +109,7 @@ func (Controller) PlayerFightBoss(data1 *fight.ChallengeBossInboundInfo, p *play } else { //说明是带规则的 iswin := true - for _, v := range service.NewFightRuleService().GetByRuleIdxs(mdata.Rule) { + for _, v := range service.NewFightRuleService().GetByRuleIdxs(bosinfo[0].Rule) { r := input.GetRule(int64(v.RuleIdx)) if r != nil { r.SetArgs(v.Args...) diff --git a/modules/config/model/boss_pet.go b/modules/config/model/boss_pet.go index f0b5d4f7e..95a27ee54 100644 --- a/modules/config/model/boss_pet.go +++ b/modules/config/model/boss_pet.go @@ -19,9 +19,9 @@ type BossConfig struct { ParentID int32 `gorm:"not null;default:0;column:parentId;type:int" json:"parentId"` // 父ID Remark string `gorm:"comment:'BOSS备注'" json:"remark"` //是否可捕捉MapPit - IsCapture int `gorm:"type:int;default:0;comment:'是否可捕捉'" json:"is_capture"` - Script string `gorm:"size:1024;default:'';comment:'BOSS脚本'" json:"script"` //boss出招逻辑做成js脚本 - + IsCapture int `gorm:"type:int;default:0;comment:'是否可捕捉'" json:"is_capture"` + Script string `gorm:"size:1024;default:'';comment:'BOSS脚本'" json:"script"` //boss出招逻辑做成js脚本 + Rule []uint32 `gorm:"type:jsonb; ;comment:'战胜规则'" json:"rule"` } // TableName 指定BossConfig对应的数据库表名 diff --git a/modules/config/model/map_node.go b/modules/config/model/map_node.go index 6b395bab7..71fc20949 100644 --- a/modules/config/model/map_node.go +++ b/modules/config/model/map_node.go @@ -53,7 +53,7 @@ type MapNode struct { //完成后的脚本回调,比如战胜和击败绑定不同的任务ID,以及剧情绑定不同的ID //回调通boss打完给前端发送固定事件 //PlotFinishScript string `gorm:"type:text;comment:'剧情完成后脚本回调'" json:"plot_finish_script" description:"剧情完成后脚本回调"` - Rule []uint32 `gorm:"type:jsonb; ;comment:'战胜规则'" json:"rule"` + BossIds []uint32 `gorm:"type:jsonb; ;comment:'塔层BOSS ID列表'" json:"boss_ids"` }