Files
bl/logic/service/pet/egg.go
昔念 026689f3ed ```
feat(cache): 添加复合键缓存操作支持

添加了基于 uint32+string 组合键的缓存操作方法,包括
GetByCompoundKey、SetByCompoundKey、DelByCompoundKey 和
ContainsByCompoundKey 方法,用于处理用户ID和会话ID的组合缓存场景

fix(vscode): 添加 cSpell 配置支持 struc 词汇

refactor(session): 移除过时的会话管理方法

移除了基于单一字符串键的会话管理方法,因为已迁移到使用
复合键的缓存操作方式
```
2026-01-19 18:51:56 +08:00

120 lines
4.0 KiB
Go

package pet
import "blazing/logic/service/common"
// C2S_GET_BREED_PET 获取繁殖精灵协议
// 前端到后端
type C2S_GET_BREED_PET struct {
Head common.TomeeHeader `cmd:"2364" struc:"skip"`
MaleCatchTime uint32 `json:"maleCatchTime"` // 雄性的精灵捕获时间
}
// S2C_GET_BREED_PET 获取繁殖精灵协议
// 后端到前端
type S2C_GET_BREED_PET struct {
FemaleListLen uint32 `struc:"sizeof=FemaleList"`
FemaleList []uint32 `json:"femaleList"` // 可繁殖雌性的精灵数组 参数为精灵捕获时间
}
// S2C_GET_BREED_INFO 获取繁殖信息协议
// 后端到前端
type S2C_GET_BREED_INFO struct {
// BreedState 繁殖状态
BreedState uint32 `json:"breedState"`
// BreedLeftTime 繁殖剩余时间
BreedLeftTime uint32 `json:"breedLeftTime"`
// BreedCoolTime 繁殖冷却时间
BreedCoolTime uint32 `json:"breedCoolTime"`
// MalePetCatchTime 雄性精灵捕捉时间
MalePetCatchTime uint32 `json:"malePetCatchTime"`
// MalePetID 雄性精灵ID
MalePetID uint32 `json:"malePetID"`
// FeMalePetCatchTime 雌性精灵捕捉时间
FeMalePetCatchTime uint32 `json:"feMalePetCatchTime"`
// FeMalePetID 雌性精灵ID
FeMalePetID uint32 `json:"feMalePetID"`
// HatchState 孵化状态
HatchState uint32 `json:"hatchState"`
// HatchLeftTime 孵化剩余时间
HatchLeftTime uint32 `json:"hatchLeftTime"`
// EggID 当前孵化的精灵蛋ID
EggID uint32 `json:"eggID"`
// Intimacy 亲密度 1 = 悲伤 以此类推 ["悲伤","冷淡","平淡","友好","亲密无间"]
Intimacy uint32 `json:"intimacy"`
}
// C2S_GET_BREED_INFO 获取繁殖信息协议
// 前端到后端无数据 请求协议
type C2S_GET_BREED_INFO struct {
Head common.TomeeHeader `cmd:"2365" struc:"skip"`
}
// C2S_GET_EGG_LIST 获取精灵蛋数组协议
// 前端到后端无数据 请求协议
type C2S_GET_EGG_LIST struct {
Head common.TomeeHeader `cmd:"2367" struc:"skip"`
}
// S2C_GET_EGG_LIST 获取精灵蛋数组协议
// 后端到前端
type S2C_GET_EGG_LIST struct {
EggListLen uint32 `struc:"sizeof=EggList"`
EggList []EggInfo `json:"eggList"` // 精灵蛋数组 跟其他数组一样 需要给有数量
}
// EggInfo 精灵蛋信息
type EggInfo struct {
OwnerID uint32 `json:"ownerID"` // 所属人ID
EggCatchTime uint32 `json:"eggCatchTime"` // 精灵蛋获得时间
EggID uint32 `json:"eggID"` // 精灵蛋ID
Male uint32 `json:"male"` // 雄性精灵ID
Female uint32 `json:"female"` // 雌性精灵ID
}
// C2S_START_HATCH 开始孵化精灵蛋协议
// 前端到后端
type C2S_START_HATCH struct {
Head common.TomeeHeader `cmd:"2368" struc:"skip"`
OwnerID uint32 `json:"ownerID"` // 所属人ID
EggCatchTime uint32 `json:"eggCatchTime"` // 精灵蛋获得时间
}
// S2C_START_HATCH 开始孵化精灵蛋协议
// 后端到前端无数据内容 只有头部信息
type S2C_START_HATCH struct {
}
// C2S_EFFECT_HATCH 精灵蛋互动协议
// 前端到后端
type C2S_EFFECT_HATCH struct {
Head common.TomeeHeader `cmd:"2369" struc:"skip"`
Index uint32 `json:"index"` // 互动ID 1 2 3 4 4种
}
// S2C_EFFECT_HATCH 精灵蛋互动协议
// 后端到前端
type S2C_EFFECT_HATCH struct {
Intimacy uint32 `json:"intimacy"` // 亲密度 1 = 悲伤 以此类推 ["悲伤","冷淡","平淡","友好","亲密无间"]
}
// C2S_GET_HATCH_PET 获得孵化精灵协议
// 前端到后端无数据内容 请求协议
type C2S_GET_HATCH_PET struct {
Head common.TomeeHeader `cmd:"2370" struc:"skip"`
}
// S2C_GET_HATCH_PET 获得孵化精灵协议
// 后端到前端
type S2C_GET_HATCH_PET struct {
PetID uint32 `json:"petID"` // 精灵ID
CatchTime uint32 `json:"catchTime"` // 精灵捕获时间
}
// C2S_START_BREED 开始繁殖协议
// 前端到后端
type C2S_START_BREED struct {
Head common.TomeeHeader `cmd:"2374" struc:"skip"`
Male uint32 `json:"male"` // 雄性精灵捕捉时间
Female uint32 `json:"female"` // 雌性精灵捕捉时间
}