Files
bl/logic/service/pet/egg.go
昔念 fcb55d3a46 ```
refactor(controller): 替换BossCompletedTask为专用方法名

在战斗控制器中将p.BossCompletedTask替换为p.SptCompletedTask,
以及在塔沃控制器中将BossCompletedTask相关调用替换为TawerCompletedTask,
以更好地区分不同的任务完成逻辑。

---

fix(item_use): 添加nil检查防止程序崩溃

在处理神经元道具时,增加对oldPet对象的nil检查,
如果为空则返回系统错误码,避免程序出现
2026-01-20 04:40:36 +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
MalePetID uint32 `json:"male"` // 雄性精灵ID
FeMalePetID 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"` // 雌性精灵捕捉时间
}