feat(fight): 优化战斗逻辑与精灵切换流程

- 在多个战斗控制器方法中添加 defer 调用,确保战斗操作正确延迟执行
- 修改 ChangePet 方法返回值类型,增强接口一致性
- 修复战斗准备阶段逻辑,重构战斗开始信息构建过程
- 移除冗余广播调用,调整 PVE 战斗初始化流程
- 更新 README 中的 pprof 命令地址并完善项目介绍部分

fix(effect): 修复效果叠加逻辑与ID解析问题

- 效果叠加时默认增加一层,而非直接相加参数
- 修正 EffectIDCombiner 类型、CatchTime 的掩码偏移计算错误
- 添加重复效果日志输出,便于调试追踪

feat(boss): 完善BOSS特性实现逻辑

- 修正 NewSel17 特性
This commit is contained in:
2025-11-29 19:26:56 +08:00
parent f1c75abde6
commit 11f6817d62
23 changed files with 7269 additions and 6572 deletions

View File

@@ -35,7 +35,7 @@ func init() {
g.Server().BindMiddleware("/admin/*/open/*", BaseAuthorityMiddlewareOpen)
g.Server().BindMiddleware("/admin/*/comm/*", BaseAuthorityMiddlewareComm)
g.Server().BindMiddleware("/admin/*", BaseAuthorityMiddleware)
g.Server().BindMiddleware("/*", AutoI18n)
// g.Server().BindMiddleware("/*", AutoI18n)
g.Server().BindMiddleware("/*", MiddlewareCORS)
}

View File

@@ -12,7 +12,7 @@ type Task struct {
*cool.Model
PlayerID uint64 `gorm:"not null;index:idx_task_by_player_id;comment:'所属玩家ID'" json:"player_id"`
TaskID uint32 `gorm:"not null;comment:'任务ID'" json:"task_id"`
Data string `gorm:"type:text;not null;comment:'全部数据'" json:"data"`
Data string `gorm:"type:jsonb;not null;comment:'全部数据'" json:"data"`
}
// TaskEX 单个任务的详细信息,包含任务步骤状态和整体状态

View File

@@ -45,7 +45,10 @@ func (s *TaskService) Exec(id uint32, t func(*model.TaskEX) bool) {
}
gg.PlayerID = uint64(s.userid)
gg.TaskID = id
m1.Save(gg)
_, err := m1.Save(gg)
if err != nil {
panic(err)
}
}

View File

@@ -96,7 +96,8 @@ func delChildDict(id int64) error {
func NewDictInfoService() *DictInfoService {
return &DictInfoService{
&cool.Service{
Model: model.NewDictInfo(),
UniqueKey: map[string]string{"name": "名称不能重复"},
Model: model.NewDictInfo(),
ListQueryOp: &cool.QueryOp{
FieldEQ: []string{"typeId"},
KeyWordField: []string{"name"},