syntax = "proto3"; package proto; option go_package = "./;proto"; import "define.proto"; message Achievement { enum Status { INVALID = 0; UNFINISHED = 1; FINISHED = 2; REWARD_TAKEN = 3; } uint32 finish_timestamp = 11; Status status = 13; uint32 cur_progress = 12; uint32 id = 14; uint32 total_progress = 8; } message AchievementAllDataNotify { enum CmdId { option allow_alias = true; NONE = 0; CMD_ID = 2676; ENET_CHANNEL_ID = 0; ENET_IS_RELIABLE = 1; } repeated Achievement achievement_list = 4; repeated uint32 reward_taken_goal_id_list = 2; } message AchievementUpdateNotify { enum CmdId { option allow_alias = true; NONE = 0; CMD_ID = 2668; ENET_CHANNEL_ID = 0; ENET_IS_RELIABLE = 1; } repeated Achievement achievement_list = 14; } message TakeAchievementRewardReq { enum CmdId { option allow_alias = true; NONE = 0; CMD_ID = 2675; ENET_CHANNEL_ID = 0; ENET_IS_RELIABLE = 1; IS_ALLOW_CLIENT = 1; } repeated uint32 id_list = 13; } message TakeAchievementRewardRsp { enum CmdId { option allow_alias = true; NONE = 0; CMD_ID = 2657; ENET_CHANNEL_ID = 0; ENET_IS_RELIABLE = 1; } repeated uint32 id_list = 7; repeated ItemParam item_list = 10; int32 retcode = 1; } message TakeAchievementGoalRewardReq { enum CmdId { option allow_alias = true; NONE = 0; CMD_ID = 2652; ENET_CHANNEL_ID = 0; ENET_IS_RELIABLE = 1; IS_ALLOW_CLIENT = 1; } repeated uint32 id_list = 5; } message TakeAchievementGoalRewardRsp { enum CmdId { option allow_alias = true; NONE = 0; CMD_ID = 2681; ENET_CHANNEL_ID = 0; ENET_IS_RELIABLE = 1; } int32 retcode = 15; repeated uint32 id_list = 12; repeated ItemParam item_list = 5; }