package task import "blazing/modules/blazing/model" type TaskResult struct { PetTypeId uint32 `json:"petTypeId" description:"发放的精灵ID"` // 发放的精灵ID, ItemList []model.ItemInfo `json:"itemList" description:"发放物品的数组"` // 发放物品的数组, } var TaskResultMap = make(map[uint32]map[uint32]TaskResult) // 添加默认分支0 func Get_Task_Info(v CompleteTaskInboundInfo) *TaskResult { t, ok := TaskResultMap[v.TaskId][v.OutState] if ok { return &t } else { t, ok := TaskResultMap[v.TaskId][0] if ok { return &t } } return nil } func init() { // 定义通用奖励:经验奖励(ItemId:3,数量20000) expReward := []model.ItemInfo{{ItemId: 3, ItemCnt: 20000}} // 定义扭蛋牌奖励(ItemId:400501,数量5) eggReward := []model.ItemInfo{{ItemId: 400501, ItemCnt: 5}} // 批量初始化任务ID 401-407(奖励均为经验) for taskID := 401; taskID <= 407; taskID++ { // 为每个任务ID初始化内层map TaskResultMap[uint32(taskID)] = make(map[uint32]TaskResult) // 设置状态0对应的奖励(与401格式一致) TaskResultMap[uint32(taskID)][0] = TaskResult{ ItemList: expReward, } } // 单独初始化任务462(奖励为扭蛋牌) TaskResultMap[462] = make(map[uint32]TaskResult) TaskResultMap[462][0] = TaskResult{ ItemList: eggReward, } // 后续若有其他任务,按相同格式添加即可 // 例如: // TaskResultMap[xxx] = make(map[uint32]TaskResult) // TaskResultMap[xxx][0] = TaskResult{ItemList: ...} }