feat(xml): 添加进化配置映射并更新错误码提示

- 在 `common/data/xmlres/file.go` 中添加 EVOLVMAP 用于加载进化配置
- 更新多个控制器中的金币不足错误码,统一使用骄阳余额不足错误码 `ErrSunDouInsufficient10016`
- 修改战斗逻辑中 AI 动作触发机制,并优化战斗流程
- 增加对融合材料合法性的校验
- 调整战斗动作通道缓冲区大小以提升并发处理能力
- 更新 XML 配置
This commit is contained in:
2025-12-16 02:50:10 +08:00
parent 597bd7b9d5
commit 39dc79f706
17 changed files with 101 additions and 47 deletions

View File

@@ -13,7 +13,7 @@ import (
func (h Controller) PetFusion(data *pet.C2S_PetFusion, c *player.Player) (result *pet.PetFusionInfo, err errorcode.ErrorCode) {
if !c.UseCoins(1000) {
return result, errorcode.ErrorCodes.ErrSystemBusy
return result, errorcode.ErrorCodes.ErrSunDouInsufficient10016
}
// g.Dump(c.Info.PetList)
@@ -49,10 +49,14 @@ func (h Controller) PetFusion(data *pet.C2S_PetFusion, c *player.Player) (result
if resid == 0 {
//todo失败降低等级
return &pet.PetFusionInfo{}, 0
}
effect := int(service.PetFusionMaterialServiceIns.Data(data.Item1))
if effect == 0 {
return &pet.PetFusionInfo{}, 0
}
effect := int(service.PetFusionMaterialServiceIns.Data(data.Item1))
dv1 := alpacadecimal.NewFromInt(2).Div(alpacadecimal.NewFromInt(3)).Mul(alpacadecimal.NewFromInt(int64(Mcatchpetinfo.Dv)))
dv2 := alpacadecimal.NewFromInt(1).Div(alpacadecimal.NewFromInt(3)).Mul(alpacadecimal.NewFromInt(int64(Auxpetinfo.Dv)))
dv := dv1.Add(dv2).Add(alpacadecimal.NewFromInt(1)).IntPart()