Files
bl/logic/service/pet/BargeList.go
昔念 a62b94446a ```
feat(pet): 添加精灵进化功能并优化融合系统

- 新增PetELV方法实现精灵进化功能,支持分支进化选择
- 添加进化相关的数据结构定义
- 实现进化材料检查和扣除逻辑
- 优化宠物融合失败处理机制

fix(fight): 修复战斗系统和效果计算问题

- 修复NewSeIdx_11和effect_60中的伤害计算逻辑
- 修复战斗状态判断条件,避免非PVP模式下的错误处理
- 优化战斗回合处理流程,修复效果缓存清空时机
- 修复effect_69
2026-01-03 01:35:32 +08:00

47 lines
2.2 KiB
Go
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

package pet
import "blazing/logic/service/common"
// PetBargeListInboundInfo 对应Java的PetBargeListInboundInfo实现InboundMessage接口
type PetBargeListInboundInfo struct {
Head common.TomeeHeader `cmd:"2309" struc:"skip"`
StartPetId uint32 `description:"开始精灵id" codec:"startPetId"` // @UInt long 对应Go的uint32无符号64位
EndPetId uint32 `description:"结束精灵id" codec:"endPetId"` // 字段标签模拟注解功能(描述、编解码标识)
}
type C2S_9756 struct {
Head common.TomeeHeader `cmd:"9756" struc:"skip"`
}
// PetBargeListInfo 对应Java的PetBargeListInfo类
type PetBargeListInfo struct {
PetId uint32 `description:"精灵ID"` // @UInt long 对应Go的uint32无符号64位整数
EnCntCnt uint32 `description:"未知"` // public字段在Go中通过首字母大写导出
IsCatched uint32 `description:"捕获记录"` // 结构体标签模拟@FieldDescription注解
IsKilled uint32 `description:"击杀记录"` // 字段名采用帕斯卡命名法首字母大写以匹配Java的public访问权限
}
type PetBargeListOutboundInfo struct {
// 对应Java的List<PetBargeListInfo>Go中用切片+指针实现动态列表
PetBargeListLen uint32 `struc:"sizeof=PetBargeList"`
PetBargeList []PetBargeListInfo `description:"返回的精灵信息" codec:"petBargeList"`
}
type PetEV struct {
Head common.TomeeHeader `cmd:"50001" struc:"skip"`
CacthTime uint32 `description:"捕捉时间" codec:"cacthTime"`
EVs [6]uint32 `description:"属性" codec:"evs"`
}
type S2C_50001 struct {
UseEV uint32 //用掉的学习力
}
type S2C_9756 struct {
UseEV uint32 //用掉的学习力
}
// C2S_PET_EVOLVTION 精灵进化相关的客户端到服务端的消息结构
type C2S_PET_EVOLVTION struct {
Head common.TomeeHeader `cmd:"2314" struc:"skip"`
CacthTime uint32 // 精灵的捕捉时间
Index uint32 // 进化的分支索引。0代表没选择进化1就是第一种进化形态2就是其他分支进化形态
// 如果没有分支进化只有一种进化形态Index只能为1
// 后端直接判断进化条件的材料,执行进化并扣除材料
}