diff --git a/src/server/conf/guessColor/guessColorCfg..go b/src/server/conf/guessColor/guessColorCfg..go new file mode 100644 index 00000000..cd125345 --- /dev/null +++ b/src/server/conf/guessColor/guessColorCfg..go @@ -0,0 +1,93 @@ +package guesscolorCfg + +import ( + "server/GoUtil" + "server/game/mod/item" + "server/gamedata" + "strings" +) + +const ( + CFG_GUESS_COLOR_TEMPLATE = "GuessColorTemplate" + CFG_GUESS_COLOR_PASS = "GuessColorPass" + CFE_GUESS_COLOR_JACKPOT = "GuessColorJackpot" + CFG_GUESS_COLOR_REWARD = "GuessColorReward" +) + +func init() { + gamedata.InitCfg(CFG_GUESS_COLOR_TEMPLATE) + gamedata.InitCfg(CFG_GUESS_COLOR_PASS) + gamedata.InitCfg(CFE_GUESS_COLOR_JACKPOT) + gamedata.InitCfg(CFG_GUESS_COLOR_REWARD) +} + +func GetFirstPass(Id int) map[int]int { + data, err := gamedata.GetDataByIntKey(CFG_GUESS_COLOR_TEMPLATE, Id) + if err != nil { + return nil + } + str := gamedata.GetStringValue(data, "FirstPass") + arr := strings.Split(str, "|") + ret := make(map[int]int) + for k, v := range arr { + ret[k+1] = GoUtil.Int(v) + } + return ret +} + +func GetLoseItem(Id int) []*item.Item { + data, err := gamedata.GetDataByIntKey(CFG_GUESS_COLOR_TEMPLATE, Id) + if err != nil { + return nil + } + return gamedata.GetItemList(data, "ItemCost") +} + +func GetFirstItem(Id int) []*item.Item { + data, err := gamedata.GetDataByIntKey(CFG_GUESS_COLOR_TEMPLATE, Id) + if err != nil { + return nil + } + return gamedata.GetItemList(data, "FirstItem") +} + +func GetActivityItemId(Id int) int { + data, err := gamedata.GetDataByIntKey(CFG_GUESS_COLOR_TEMPLATE, Id) + if err != nil { + return 0 + } + return gamedata.GetIntValue(data, "ItemId") +} + +func GetRewardItem(Id int) []*item.Item { + data, err := gamedata.GetDataByIntKey(CFG_GUESS_COLOR_REWARD, Id) + if err != nil { + return nil + } + return gamedata.GetItemList(data, "Items") +} + +func GetJackpot() []int { + data, err := gamedata.GetData(CFE_GUESS_COLOR_JACKPOT) + if err != nil { + return []int{} + } + result := make([]int, 0) + for k := range data { + result = append(result, GoUtil.Int(k)) + } + return result +} + +func GetPassNum(Pass int) int { + data, err := gamedata.GetData(CFG_GUESS_COLOR_PASS) + if err != nil { + return 0 + } + for _, v := range data { + if gamedata.GetIntValue(v, "Min") <= Pass && gamedata.GetIntValue(v, "Max") >= Pass { + return gamedata.GetIntValue(v, "Num") + } + } + return 0 +} diff --git a/src/server/game/ActivityFunc.go b/src/server/game/ActivityFunc.go index cf44a3db..6efe1e86 100644 --- a/src/server/game/ActivityFunc.go +++ b/src/server/game/ActivityFunc.go @@ -7,6 +7,34 @@ import ( "server/msg" ) +// 活动模块 登录 +func ActivityLogin(p *Player) { + ActivityInfo := GetActivityInfo(p, ACT_TYPE_MINING) + if ActivityInfo != nil { + MiningMod := p.PlayMod.getMiningMod() + MiningMod.Login(ActivityInfo.Id) + } + ActivityInfo = GetActivityInfo(p, ACT_TYPE_GUESS_COLOR) + if ActivityInfo != nil { + GuessColorMod := p.PlayMod.getGuessColorMod() + GuessColorMod.Login(ActivityInfo.Id) + } +} + +// 活动模块 零点更新 +func ActivityZeroUpdate(p *Player) { + ActivityInfo := GetActivityInfo(p, ACT_TYPE_MINING) + if ActivityInfo != nil { + MiningMod := p.PlayMod.getMiningMod() + MiningMod.ZeroUpdate(ActivityInfo.Id) + } + ActivityInfo = GetActivityInfo(p, ACT_TYPE_GUESS_COLOR) + if ActivityInfo != nil { + GuessColorMod := p.PlayMod.getGuessColorMod() + GuessColorMod.ZeroUpdate(ActivityInfo.Id) + } +} + func GetActivityInfo(p *Player, actType int) *ActivityInfo { for _, v := range p.activity { if v.Type == actType { @@ -33,6 +61,9 @@ func GetActivityStatus(p *Player, actType int) int { func MiningBackData(p *Player) { ActivityInfo := GetActivityInfo(p, ACT_TYPE_MINING) + if ActivityInfo == nil { + return + } Status := GetActivityStatus(p, ACT_TYPE_MINING) Template := miningCfg.GetTemplate(ActivityInfo.Id) MiningMod := p.PlayMod.getMiningMod() @@ -48,6 +79,38 @@ func MiningBackData(p *Player) { }) } +func GuessColorBackData(p *Player) { + ActivityInfo := GetActivityInfo(p, ACT_TYPE_GUESS_COLOR) + if ActivityInfo == nil { + return + } + Status := GetActivityStatus(p, ACT_TYPE_GUESS_COLOR) + GuessColorMod := p.PlayMod.getGuessColorMod() + Color := make([]int32, 0) + Pos := make([]int32, 0) + for k, v := range GuessColorMod.Answer { + if GuessColorMod.Progress[k] > 0 { + Pos = append(Pos, int32(k)) + continue + } + Color = append(Color, int32(v)) + } + p.PushClientRes(&msg.ResGuessColor{ + Id: int32(ActivityInfo.Id), + Status: int32(Status), + EndTime: int32(ActivityInfo.EndT), + Pass: int32(GuessColorMod.Pass), + Opponent: &msg.Opponent{ + Name: GuessColorMod.Opponent.Name, + Face: int32(GuessColorMod.Opponent.Face), + Avatar: int32(GuessColorMod.Opponent.Avatar), + Progress: int32(GuessColorMod.Opponent.Progress), + }, + Color: Color, + Pos: Pos, + }) +} + func RedBackData(p *Player) { result := make(map[int32]int32) Now := GoUtil.Now() @@ -70,6 +133,9 @@ func GetActivityItem(p *Player, ActType []int) []*item.Item { case ACT_TYPE_MINING: Item := miningCfg.GetLoseItem(v) Items = item.Merge(Items, Item) + case ACT_TYPE_GUESS_COLOR: + Item := miningCfg.GetLoseItem(v) + Items = item.Merge(Items, Item) } } return Items diff --git a/src/server/game/GameLogic.go b/src/server/game/GameLogic.go index fb789678..ddf49cc1 100644 --- a/src/server/game/GameLogic.go +++ b/src/server/game/GameLogic.go @@ -102,6 +102,7 @@ func (gl *GameLogic) ZeroFlush() { var a1 = []interface{}{gl.DailyTaskTimestamp} GoUtil.CallEvent(MergeConst.Notify_Daily_Renew, a1) gl.RankMgrSend(MsgMod.MSG_ZERO_UPDATE) // 零点更新排行榜 + gl.VarMgrSend(MsgMod.MSG_ZERO_UPDATE) // 零点更新变量 gl.CreateDailyLogFile() } @@ -355,7 +356,7 @@ func (ad *GameLogic) CreateVarMgr() { ad.VarMgr = &VarMgr{ ServerMod: new(ServerMod), } - ad.ChampshipMgr.Init() + ad.VarMgr.Init() } func (ad *GameLogic) VarMgrSend(m *MsgMod.Msg) { @@ -382,7 +383,7 @@ func (ad *GameLogic) GetSimplePlayerByUid(Id int) *PlayerSimpleData { return nil } value, _ := json.Marshal(player) - db.RedisSetKey(Idstr, string(value), 300) + db.RedisSetKey(Idstr, string(value), time.Duration(300)*time.Second) } else { err := json.Unmarshal([]byte(Value), player) if err != nil { @@ -724,7 +725,7 @@ func (ad *GameLogic) RegisterNetWorkFunc() { RegisterMsgProcessFunc("ReqFastProduceReward", ReqFastProduceReward) // 连击快手奖励 RegisterMsgProcessFunc("ReqLimitSenceReward", ReqLimitSenceReward) // 获取场景转盘奖励 RegisterMsgProcessFunc("ReqSelectLimitEvent", ReqSelectLimitEvent) //领取限时事件进度奖励 - RegisterMsgProcessFunc("ReqGetGoldCard", ReqGetGoldCard) //请求限时事件排行榜 + RegisterMsgProcessFunc("ReqGetGoldCard", ReqGetGoldCard) //请求金卡交换信息 // 好友 RegisterMsgProcessFunc("ReqFriendList", ReqFriendList) // 请求好友列表 @@ -781,6 +782,10 @@ func (ad *GameLogic) RegisterNetWorkFunc() { RegisterMsgProcessFunc("ReqMining", ReqMining) // 请求挖矿数据 RegisterMsgProcessFunc("ReqMiningReward", ReqMiningReward) // 领取挖矿奖励 RegisterMsgProcessFunc("ReqMiningTake", ReqMiningTake) // 挖矿 + // 猜颜色 + RegisterMsgProcessFunc("ReqGuessColor", ReqGuessColor) // 请求猜颜色数据 + RegisterMsgProcessFunc("ReqGuessColorReward", ReqGuessColorReward) // 领取猜颜色奖励 + RegisterMsgProcessFunc("ReqGuessColorTake", ReqGuessColorTake) // 猜颜色 } diff --git a/src/server/game/Gm.go b/src/server/game/Gm.go index 4b12d46a..4e43600e 100644 --- a/src/server/game/Gm.go +++ b/src/server/game/Gm.go @@ -53,6 +53,8 @@ func ReqGmCommand(args []interface{}) error { case "zeroUpdate": player.PlayMod.getVarMod().DailyResetTime = 0 player.ZeroUpdate([]interface{}{}) + G_GameLogicPtr.RankMgrSend(MsgMod.MSG_ZERO_UPDATE) // 零点更新排行榜 + G_GameLogicPtr.VarMgrSend(MsgMod.MSG_ZERO_UPDATE) // 零点更新变量 case "setSevenLoginActive": num, _ := strconv.Atoi(arg[1]) player.PlayMod.getSevenLoginMod().Active = num @@ -127,6 +129,12 @@ func ReqGmCommand(args []interface{}) error { ActivityInfo := GetActivityInfo(player, ACT_TYPE_MINING) MiningMod.ZeroUpdate(ActivityInfo.Id) MiningBackData(player) + case "guessColorReload": + GuessColorMod := player.PlayMod.getGuessColorMod() + GuessColorMod.ZeroUpdate(-1) + ActivityInfo := GetActivityInfo(player, ACT_TYPE_GUESS_COLOR) + GuessColorMod.ZeroUpdate(ActivityInfo.Id) + GuessColorBackData(player) } player.PlayMod.save() return nil diff --git a/src/server/game/Player.go b/src/server/game/Player.go index cbe5b3d3..026a79b3 100644 --- a/src/server/game/Player.go +++ b/src/server/game/Player.go @@ -12,6 +12,7 @@ import ( "server/MergeConst" activityCfg "server/conf/activity" cardCfg "server/conf/card" + guesscolorCfg "server/conf/guessColor" itemCfg "server/conf/item" mergeDataCfg "server/conf/mergeData" miningCfg "server/conf/mining" @@ -303,6 +304,7 @@ func (p *Player) ZeroUpdate(a []interface{}) { p.PlayMod.getChampshipMod().ZeroUpdate() p.initAcitivity() + ActivityZeroUpdate(p) p.PlayMod.save() } // 周更新 @@ -341,7 +343,7 @@ func (p *Player) Login() { LimitedTimeEventTrigger(p, 0) // 猪猪银行触发 LimitedTimePiggyBankTrigger(p) - + ActivityLogin(p) p.PlayMod.getCardMod().Login(G_GameLogicPtr.SeverInfo.OpenTime) } @@ -585,6 +587,7 @@ func (p *Player) HandleItem(itemList []*item.Item, Label string) error { EndTime: int32(EndTime), Cd: int32(EffectList[1]), }) + // 触发订单事件 生成超级订单 卡牌节 LimitedTimeEventTrigger(p, EffectList[0]) p.TeLog("time_limited_event_enable", map[string]interface{}{ "event_type": EffectList[0], @@ -811,13 +814,18 @@ func (p *Player) BackDataActivity() { } func (p *Player) GetRed(AI *ActivityInfo) int { + Status := GetActivityStatus(p, AI.Type) + if Status != ACT_STATUS_START { + return 0 + } // 限时活动红点 if AI.Type == ACT_TYPE_MINING { - Status := GetActivityStatus(p, ACT_TYPE_MINING) - if Status == ACT_STATUS_START { - ItemId := miningCfg.GetActivityItemId(AI.Id) - return p.PlayMod.getItemMod().GetItem(ItemId) - } + ItemId := miningCfg.GetActivityItemId(AI.Id) + return p.PlayMod.getItemMod().GetItem(ItemId) + } + if AI.Type == ACT_TYPE_GUESS_COLOR { + ItemId := guesscolorCfg.GetActivityItemId(AI.Id) + return p.PlayMod.getItemMod().GetItem(ItemId) } return 0 } diff --git a/src/server/game/PlayerMod.go b/src/server/game/PlayerMod.go index 1d7ff0a3..6444e385 100644 --- a/src/server/game/PlayerMod.go +++ b/src/server/game/PlayerMod.go @@ -17,6 +17,7 @@ import ( "server/game/mod/endless" "server/game/mod/face" "server/game/mod/friend" + guesscolor "server/game/mod/guessColor" "server/game/mod/guild" "server/game/mod/handbook" "server/game/mod/invite" @@ -64,6 +65,7 @@ type PlayerModList struct { Kv kv.KvMod `json:"kv"` Mining mining.MiningMod `json:"mining"` Item item.ItemMod `json:"item"` + GuessColor guesscolor.GuessColorMod `json:"guessColor"` } func (p *PlayerModData) LoadDataFromDB(dwUin interface{}) bool { @@ -143,6 +145,7 @@ func (p *PlayerModData) InitMod() (bool, error) { p.ModList.Kv.InitData() p.ModList.Mining.InitData() p.ModList.Item.InitData() + p.ModList.GuessColor.InitData() return is_update, nil } @@ -285,3 +288,7 @@ func (p *PlayerMod) getMiningMod() *mining.MiningMod { func (p *PlayerMod) getItemMod() *item.ItemMod { return &p.mod_list.Item } + +func (p *PlayerMod) getGuessColorMod() *guesscolor.GuessColorMod { + return &p.mod_list.GuessColor +} diff --git a/src/server/game/RegisterNetworkFunc.go b/src/server/game/RegisterNetworkFunc.go index 3bb086d8..af1b34ec 100644 --- a/src/server/game/RegisterNetworkFunc.go +++ b/src/server/game/RegisterNetworkFunc.go @@ -2457,9 +2457,18 @@ func ReqMiningTake(args []interface{}) error { return nil } +// 领取关卡奖励 func ReqMiningReward(args []interface{}) error { _, player, _ := ParseArgs(args) MiningMod := player.PlayMod.getMiningMod() + Status := GetActivityStatus(player, ACT_TYPE_MINING) + if Status != ACT_STATUS_START { + player.SendErrClienRes(&msg.ResMiningReward{ + Code: msg.RES_CODE_FAIL, + Msg: "activity not start", + }) + return fmt.Errorf("activity not start") + } itemList, err := MiningMod.GetReward() if err != nil { player.SendErrClienRes(&msg.ResMiningReward{ @@ -2480,3 +2489,82 @@ func ReqMiningReward(args []interface{}) error { MiningBackData(player) return nil } + +// 请求猜颜色基础数据 +func ReqGuessColor(args []interface{}) error { + _, player, buf := ParseArgs(args) + req := &msg.ReqGuessColor{} + proto.Unmarshal(buf, req) + GuessColorMod := player.PlayMod.getGuessColorMod() + Items := GuessColorMod.FirstIn() + err := player.HandleItem(Items, "GuessColor") + if err != nil { + return err + } + player.PlayMod.save() + GuessColorBackData(player) + return nil +} + +func ReqGuessColorTake(args []interface{}) error { + _, player, buf := ParseArgs(args) + req := &msg.ReqGuessColorTake{} + proto.Unmarshal(buf, req) + Status := GetActivityStatus(player, ACT_TYPE_GUESS_COLOR) + if Status != ACT_STATUS_START { + player.SendErrClienRes(&msg.ResGuessColorTake{ + Code: msg.RES_CODE_FAIL, + Msg: "activity not start", + }) + return fmt.Errorf("activity not start") + } + GuessColorMod := player.PlayMod.getGuessColorMod() + LoseItem := GuessColorMod.GetLoseItem() + err := player.HandleLoseItem(LoseItem, "GuessColorLose") + if err != nil { + player.SendErrClienRes(&msg.ResGuessColorTake{ + Code: msg.RES_CODE_FAIL, + Msg: err.Error(), + }) + return err + } + GuessColorMod.Take(req.Map) + player.PlayMod.save() + GuessColorBackData(player) + player.NotifyRed(ACT_TYPE_GUESS_COLOR) + return nil +} + +func ReqGuessColorReward(args []interface{}) error { + _, player, buf := ParseArgs(args) + req := &msg.ReqGuessColorReward{} + proto.Unmarshal(buf, req) + Status := GetActivityStatus(player, ACT_TYPE_GUESS_COLOR) + if Status != ACT_STATUS_START { + player.SendErrClienRes(&msg.ResGuessColorReward{ + Code: msg.RES_CODE_FAIL, + Msg: "activity not start", + }) + return fmt.Errorf("activity not start") + } + GuessColorMod := player.PlayMod.getGuessColorMod() + itemList, err := GuessColorMod.GetReward() + if err != nil { + player.SendErrClienRes(&msg.ResGuessColorReward{ + Code: msg.RES_CODE_FAIL, + Msg: err.Error(), + }) + return err + } + err = player.HandleItem(itemList, "GuessColorReward") + if err != nil { + player.SendErrClienRes(&msg.ResGuessColorReward{ + Code: msg.RES_CODE_FAIL, + Msg: err.Error(), + }) + return err + } + player.PlayMod.save() + GuessColorBackData(player) + return nil +} diff --git a/src/server/game/ServerMod.go b/src/server/game/ServerMod.go index 5a41c0f1..4f342057 100644 --- a/src/server/game/ServerMod.go +++ b/src/server/game/ServerMod.go @@ -15,6 +15,7 @@ const ( FRIEND_MGR_KEY = "FRIEND_MGR" RANK_MGR_KEY = "RANK_MGR" MAIL_MGR_KEY = "MAIL_MGR" + VAR_MGR_KEY = "VAR_MGR" CHAMPSHIP_MGR_KEY = "CHAMPSHIP_MGR" PER_SAVE_TIME = 60 ) diff --git a/src/server/game/Type.go b/src/server/game/Type.go index 32d9f76c..f1aa4b11 100644 --- a/src/server/game/Type.go +++ b/src/server/game/Type.go @@ -25,7 +25,8 @@ const ( ) const ( - ACT_TYPE_MINING = 1 // 挖矿 + ACT_TYPE_MINING = 1 // 挖矿 + ACT_TYPE_GUESS_COLOR = 2 // 猜颜色 ) type ActivityInfo struct { diff --git a/src/server/game/VarMgr.go b/src/server/game/VarMgr.go index a93d3f8a..5c5bd454 100644 --- a/src/server/game/VarMgr.go +++ b/src/server/game/VarMgr.go @@ -1,6 +1,7 @@ package game import ( + "encoding/gob" "server/game/mod/card" "server/game/mod/msg" ) @@ -18,8 +19,8 @@ const ( ) func (f *VarMgr) Init() { - - f.key = FRIEND_MGR_KEY + gob.Register(&VarGoldCard{}) + f.key = VAR_MGR_KEY f.data = &VarData{ Var: make(map[string]interface{}), } @@ -46,8 +47,12 @@ func (f *VarMgr) initData() { } func (f *VarMgr) ZeroUpdate() { - - // 保存数据 + // 随机生成两个金卡 + Card1, Card2 := card.RankGoldCard() + f.SetVar(VAR_GOLD_CARD, &VarGoldCard{ + Four: Card1, + Five: Card2, + }) } func (f *VarMgr) SetVar(key string, value interface{}) { diff --git a/src/server/game/mod/guessColor/guessColor.go b/src/server/game/mod/guessColor/guessColor.go new file mode 100644 index 00000000..20c48756 --- /dev/null +++ b/src/server/game/mod/guessColor/guessColor.go @@ -0,0 +1,107 @@ +package guesscolor + +import ( + "fmt" + "server/GoUtil" + guesscolorCfg "server/conf/guessColor" + randnameCfg "server/conf/randname" + "server/game/mod/item" +) + +type GuessColorMod struct { + Id int + Pass int + Opponent simplePlayer + Answer map[int]int + Progress map[int]int + First bool +} + +type simplePlayer struct { + Name string + Face int + Avatar int + Progress int +} + +func (g *GuessColorMod) InitData() { + if g.Answer == nil { + g.Answer = make(map[int]int) + } + if g.Progress == nil { + g.Progress = make(map[int]int) + } + if g.Opponent.Name == "" { + g.Opponent = simplePlayer{ + Name: randnameCfg.GetRandName(), + Face: GoUtil.RandNum(1, 10), + Avatar: GoUtil.RandNum(1, 10), + Progress: 0, + } + } +} + +func (g *GuessColorMod) Login(Id int) { + if Id == 0 { + return + } + if g.Id == Id { + return + } + g.Id = Id + g.Pass = 1 + g.Opponent = simplePlayer{ + Name: randnameCfg.GetRandName(), + Face: GoUtil.RandNum(1, 10), + Avatar: GoUtil.RandNum(1, 10), + Progress: 0, + } + g.Answer = make(map[int]int) + g.Progress = make(map[int]int) + FirstPass := guesscolorCfg.GetFirstPass(Id) + g.Answer = FirstPass +} + +func (g *GuessColorMod) ZeroUpdate(Id int) { + g.Login(Id) +} + +func (g *GuessColorMod) FirstIn() []*item.Item { + if g.First { + return nil + } + g.First = true + return guesscolorCfg.GetFirstItem(g.Id) +} + +func (g *GuessColorMod) Take(Map map[int32]int32) { + for k, v := range Map { + if g.Answer[int(k)] == int(v) { + g.Progress[int(k)] = int(v) + } + } +} + +func (g *GuessColorMod) GetLoseItem() []*item.Item { + return guesscolorCfg.GetLoseItem(g.Id) +} + +func (g *GuessColorMod) GetReward() ([]*item.Item, error) { + if len(g.Answer) != len(g.Progress) { + return nil, fmt.Errorf("guess color progress error") + } + RewardId := 1 + if g.Opponent.Progress == len(g.Answer) { + RewardId = 2 + } + Item := guesscolorCfg.GetRewardItem(RewardId) + g.Pass++ + Num := guesscolorCfg.GetPassNum(g.Pass) + ColorList := guesscolorCfg.GetJackpot() + RandList := GoUtil.RandSliceNum(ColorList, Num) + g.Progress = make(map[int]int) + for k, v := range RandList { + g.Answer[k+1] = v + } + return Item, nil +} diff --git a/src/server/game/mod/mining/mining.go b/src/server/game/mod/mining/mining.go index d95cb164..0850097b 100644 --- a/src/server/game/mod/mining/mining.go +++ b/src/server/game/mod/mining/mining.go @@ -20,14 +20,13 @@ func (m *MiningMod) InitData() { } } -func (m *MiningMod) ZeroUpdate(Id int) { +func (m *MiningMod) Login(Id int) { if Id == 0 { return } if m.Id == Id { return } - // 活动不同期 重置数据 m.Id = Id m.Map = make(map[int32]string) m.Gem = make([]int, 0) @@ -35,6 +34,10 @@ func (m *MiningMod) ZeroUpdate(Id int) { m.Mining = 0 } +func (m *MiningMod) ZeroUpdate(Id int) { + m.Login(Id) +} + func (m *MiningMod) GetMap() map[int32]string { return m.Map } diff --git a/src/server/msg/Gameapi.pb.go b/src/server/msg/Gameapi.pb.go index 10f0096d..19f1954b 100644 --- a/src/server/msg/Gameapi.pb.go +++ b/src/server/msg/Gameapi.pb.go @@ -32845,6 +32845,400 @@ func (x *ItemNotify) GetItem() map[int32]int32 { return nil } +// 猜颜色 +type ReqGuessColor struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *ReqGuessColor) Reset() { + *x = ReqGuessColor{} + mi := &file_Gameapi_proto_msgTypes[573] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqGuessColor) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqGuessColor) ProtoMessage() {} + +func (x *ReqGuessColor) ProtoReflect() protoreflect.Message { + mi := &file_Gameapi_proto_msgTypes[573] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqGuessColor.ProtoReflect.Descriptor instead. +func (*ReqGuessColor) Descriptor() ([]byte, []int) { + return file_Gameapi_proto_rawDescGZIP(), []int{573} +} + +type ResGuessColor struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id int32 `protobuf:"varint,1,opt,name=Id,proto3" json:"Id,omitempty"` // 活动id + Status int32 `protobuf:"varint,2,opt,name=Status,proto3" json:"Status,omitempty"` // 0 未开始 1 进行中 2 已结束 + EndTime int32 `protobuf:"varint,3,opt,name=EndTime,proto3" json:"EndTime,omitempty"` // 结束时间 + Template int32 `protobuf:"varint,4,opt,name=Template,proto3" json:"Template,omitempty"` // 模板 + Pass int32 `protobuf:"varint,5,opt,name=Pass,proto3" json:"Pass,omitempty"` // 关卡 + Color []int32 `protobuf:"varint,6,rep,packed,name=Color,proto3" json:"Color,omitempty"` // 剩余的颜色 + Pos []int32 `protobuf:"varint,7,rep,packed,name=Pos,proto3" json:"Pos,omitempty"` // 已猜中的颜色 位置从左到右 从1开始 + Opponent *Opponent `protobuf:"bytes,8,opt,name=Opponent,proto3" json:"Opponent,omitempty"` // 对手 +} + +func (x *ResGuessColor) Reset() { + *x = ResGuessColor{} + mi := &file_Gameapi_proto_msgTypes[574] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResGuessColor) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResGuessColor) ProtoMessage() {} + +func (x *ResGuessColor) ProtoReflect() protoreflect.Message { + mi := &file_Gameapi_proto_msgTypes[574] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResGuessColor.ProtoReflect.Descriptor instead. +func (*ResGuessColor) Descriptor() ([]byte, []int) { + return file_Gameapi_proto_rawDescGZIP(), []int{574} +} + +func (x *ResGuessColor) GetId() int32 { + if x != nil { + return x.Id + } + return 0 +} + +func (x *ResGuessColor) GetStatus() int32 { + if x != nil { + return x.Status + } + return 0 +} + +func (x *ResGuessColor) GetEndTime() int32 { + if x != nil { + return x.EndTime + } + return 0 +} + +func (x *ResGuessColor) GetTemplate() int32 { + if x != nil { + return x.Template + } + return 0 +} + +func (x *ResGuessColor) GetPass() int32 { + if x != nil { + return x.Pass + } + return 0 +} + +func (x *ResGuessColor) GetColor() []int32 { + if x != nil { + return x.Color + } + return nil +} + +func (x *ResGuessColor) GetPos() []int32 { + if x != nil { + return x.Pos + } + return nil +} + +func (x *ResGuessColor) GetOpponent() *Opponent { + if x != nil { + return x.Opponent + } + return nil +} + +type Opponent struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Name string `protobuf:"bytes,2,opt,name=Name,proto3" json:"Name,omitempty"` + Face int32 `protobuf:"varint,3,opt,name=Face,proto3" json:"Face,omitempty"` + Avatar int32 `protobuf:"varint,4,opt,name=Avatar,proto3" json:"Avatar,omitempty"` + Progress int32 `protobuf:"varint,5,opt,name=Progress,proto3" json:"Progress,omitempty"` +} + +func (x *Opponent) Reset() { + *x = Opponent{} + mi := &file_Gameapi_proto_msgTypes[575] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *Opponent) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Opponent) ProtoMessage() {} + +func (x *Opponent) ProtoReflect() protoreflect.Message { + mi := &file_Gameapi_proto_msgTypes[575] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Opponent.ProtoReflect.Descriptor instead. +func (*Opponent) Descriptor() ([]byte, []int) { + return file_Gameapi_proto_rawDescGZIP(), []int{575} +} + +func (x *Opponent) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *Opponent) GetFace() int32 { + if x != nil { + return x.Face + } + return 0 +} + +func (x *Opponent) GetAvatar() int32 { + if x != nil { + return x.Avatar + } + return 0 +} + +func (x *Opponent) GetProgress() int32 { + if x != nil { + return x.Progress + } + return 0 +} + +type ReqGuessColorTake struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Map map[int32]int32 `protobuf:"bytes,1,rep,name=Map,proto3" json:"Map,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` // 颜色 pos => color +} + +func (x *ReqGuessColorTake) Reset() { + *x = ReqGuessColorTake{} + mi := &file_Gameapi_proto_msgTypes[576] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqGuessColorTake) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqGuessColorTake) ProtoMessage() {} + +func (x *ReqGuessColorTake) ProtoReflect() protoreflect.Message { + mi := &file_Gameapi_proto_msgTypes[576] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqGuessColorTake.ProtoReflect.Descriptor instead. +func (*ReqGuessColorTake) Descriptor() ([]byte, []int) { + return file_Gameapi_proto_rawDescGZIP(), []int{576} +} + +func (x *ReqGuessColorTake) GetMap() map[int32]int32 { + if x != nil { + return x.Map + } + return nil +} + +type ResGuessColorTake struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Code RES_CODE `protobuf:"varint,1,opt,name=Code,proto3,enum=tutorial.RES_CODE" json:"Code,omitempty"` + Msg string `protobuf:"bytes,2,opt,name=Msg,proto3" json:"Msg,omitempty"` +} + +func (x *ResGuessColorTake) Reset() { + *x = ResGuessColorTake{} + mi := &file_Gameapi_proto_msgTypes[577] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResGuessColorTake) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResGuessColorTake) ProtoMessage() {} + +func (x *ResGuessColorTake) ProtoReflect() protoreflect.Message { + mi := &file_Gameapi_proto_msgTypes[577] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResGuessColorTake.ProtoReflect.Descriptor instead. +func (*ResGuessColorTake) Descriptor() ([]byte, []int) { + return file_Gameapi_proto_rawDescGZIP(), []int{577} +} + +func (x *ResGuessColorTake) GetCode() RES_CODE { + if x != nil { + return x.Code + } + return RES_CODE_FAIL +} + +func (x *ResGuessColorTake) GetMsg() string { + if x != nil { + return x.Msg + } + return "" +} + +type ReqGuessColorReward struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *ReqGuessColorReward) Reset() { + *x = ReqGuessColorReward{} + mi := &file_Gameapi_proto_msgTypes[578] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqGuessColorReward) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqGuessColorReward) ProtoMessage() {} + +func (x *ReqGuessColorReward) ProtoReflect() protoreflect.Message { + mi := &file_Gameapi_proto_msgTypes[578] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqGuessColorReward.ProtoReflect.Descriptor instead. +func (*ReqGuessColorReward) Descriptor() ([]byte, []int) { + return file_Gameapi_proto_rawDescGZIP(), []int{578} +} + +type ResGuessColorReward struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Code RES_CODE `protobuf:"varint,1,opt,name=Code,proto3,enum=tutorial.RES_CODE" json:"Code,omitempty"` + Msg string `protobuf:"bytes,2,opt,name=Msg,proto3" json:"Msg,omitempty"` +} + +func (x *ResGuessColorReward) Reset() { + *x = ResGuessColorReward{} + mi := &file_Gameapi_proto_msgTypes[579] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResGuessColorReward) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResGuessColorReward) ProtoMessage() {} + +func (x *ResGuessColorReward) ProtoReflect() protoreflect.Message { + mi := &file_Gameapi_proto_msgTypes[579] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResGuessColorReward.ProtoReflect.Descriptor instead. +func (*ResGuessColorReward) Descriptor() ([]byte, []int) { + return file_Gameapi_proto_rawDescGZIP(), []int{579} +} + +func (x *ResGuessColorReward) GetCode() RES_CODE { + if x != nil { + return x.Code + } + return RES_CODE_FAIL +} + +func (x *ResGuessColorReward) GetMsg() string { + if x != nil { + return x.Msg + } + return "" +} + var File_Gameapi_proto protoreflect.FileDescriptor var file_Gameapi_proto_rawDesc = []byte{ @@ -36771,17 +37165,58 @@ var file_Gameapi_proto_rawDesc = []byte{ 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, - 0x01, 0x2a, 0x42, 0x0a, 0x0b, 0x48, 0x41, 0x4e, 0x44, 0x4c, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, - 0x12, 0x07, 0x0a, 0x03, 0x41, 0x44, 0x44, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x43, 0x4f, 0x4d, - 0x50, 0x4f, 0x53, 0x45, 0x10, 0x01, 0x12, 0x07, 0x0a, 0x03, 0x42, 0x55, 0x59, 0x10, 0x02, 0x12, - 0x08, 0x0a, 0x04, 0x53, 0x45, 0x4c, 0x4c, 0x10, 0x03, 0x12, 0x0a, 0x0a, 0x06, 0x52, 0x45, 0x4d, - 0x4f, 0x56, 0x45, 0x10, 0x04, 0x2a, 0x21, 0x0a, 0x08, 0x52, 0x45, 0x53, 0x5f, 0x43, 0x4f, 0x44, - 0x45, 0x12, 0x08, 0x0a, 0x04, 0x46, 0x41, 0x49, 0x4c, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x53, - 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x01, 0x2a, 0x2e, 0x0a, 0x09, 0x49, 0x54, 0x45, 0x4d, - 0x5f, 0x54, 0x59, 0x50, 0x45, 0x12, 0x0a, 0x0a, 0x06, 0x45, 0x4e, 0x45, 0x52, 0x47, 0x59, 0x10, - 0x00, 0x12, 0x08, 0x0a, 0x04, 0x53, 0x54, 0x41, 0x52, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x44, - 0x49, 0x41, 0x4d, 0x4f, 0x4e, 0x44, 0x10, 0x02, 0x42, 0x08, 0x5a, 0x06, 0x2e, 0x2e, 0x2f, 0x6d, - 0x73, 0x67, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x01, 0x22, 0x0f, 0x0a, 0x0d, 0x52, 0x65, 0x71, 0x47, 0x75, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6c, + 0x6f, 0x72, 0x22, 0xd9, 0x01, 0x0a, 0x0d, 0x52, 0x65, 0x73, 0x47, 0x75, 0x65, 0x73, 0x73, 0x43, + 0x6f, 0x6c, 0x6f, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x02, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x18, 0x0a, 0x07, + 0x45, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x45, + 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, + 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, + 0x74, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x50, 0x61, 0x73, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x04, 0x50, 0x61, 0x73, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x18, + 0x06, 0x20, 0x03, 0x28, 0x05, 0x52, 0x05, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x12, 0x10, 0x0a, 0x03, + 0x50, 0x6f, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x05, 0x52, 0x03, 0x50, 0x6f, 0x73, 0x12, 0x2e, + 0x0a, 0x08, 0x4f, 0x70, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x12, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x6f, 0x70, 0x70, 0x6f, + 0x6e, 0x65, 0x6e, 0x74, 0x52, 0x08, 0x4f, 0x70, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x22, 0x66, + 0x0a, 0x08, 0x6f, 0x70, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x4e, 0x61, + 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x12, + 0x0a, 0x04, 0x46, 0x61, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x46, 0x61, + 0x63, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x41, 0x76, 0x61, 0x74, 0x61, 0x72, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x06, 0x41, 0x76, 0x61, 0x74, 0x61, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x72, + 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x50, 0x72, + 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x22, 0x83, 0x01, 0x0a, 0x11, 0x52, 0x65, 0x71, 0x47, 0x75, + 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x54, 0x61, 0x6b, 0x65, 0x12, 0x36, 0x0a, 0x03, + 0x4d, 0x61, 0x70, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x74, 0x75, 0x74, 0x6f, + 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x52, 0x65, 0x71, 0x47, 0x75, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6c, + 0x6f, 0x72, 0x54, 0x61, 0x6b, 0x65, 0x2e, 0x4d, 0x61, 0x70, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, + 0x03, 0x4d, 0x61, 0x70, 0x1a, 0x36, 0x0a, 0x08, 0x4d, 0x61, 0x70, 0x45, 0x6e, 0x74, 0x72, 0x79, + 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, + 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x4d, 0x0a, 0x11, + 0x52, 0x65, 0x73, 0x47, 0x75, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x54, 0x61, 0x6b, + 0x65, 0x12, 0x26, 0x0a, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x12, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x52, 0x45, 0x53, 0x5f, 0x43, + 0x4f, 0x44, 0x45, 0x52, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x4d, 0x73, 0x67, 0x22, 0x15, 0x0a, 0x13, 0x52, + 0x65, 0x71, 0x47, 0x75, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x52, 0x65, 0x77, 0x61, + 0x72, 0x64, 0x22, 0x4f, 0x0a, 0x13, 0x52, 0x65, 0x73, 0x47, 0x75, 0x65, 0x73, 0x73, 0x43, 0x6f, + 0x6c, 0x6f, 0x72, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x12, 0x26, 0x0a, 0x04, 0x43, 0x6f, 0x64, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, + 0x61, 0x6c, 0x2e, 0x52, 0x45, 0x53, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x52, 0x04, 0x43, 0x6f, 0x64, + 0x65, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, + 0x4d, 0x73, 0x67, 0x2a, 0x42, 0x0a, 0x0b, 0x48, 0x41, 0x4e, 0x44, 0x4c, 0x45, 0x5f, 0x54, 0x59, + 0x50, 0x45, 0x12, 0x07, 0x0a, 0x03, 0x41, 0x44, 0x44, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x43, + 0x4f, 0x4d, 0x50, 0x4f, 0x53, 0x45, 0x10, 0x01, 0x12, 0x07, 0x0a, 0x03, 0x42, 0x55, 0x59, 0x10, + 0x02, 0x12, 0x08, 0x0a, 0x04, 0x53, 0x45, 0x4c, 0x4c, 0x10, 0x03, 0x12, 0x0a, 0x0a, 0x06, 0x52, + 0x45, 0x4d, 0x4f, 0x56, 0x45, 0x10, 0x04, 0x2a, 0x21, 0x0a, 0x08, 0x52, 0x45, 0x53, 0x5f, 0x43, + 0x4f, 0x44, 0x45, 0x12, 0x08, 0x0a, 0x04, 0x46, 0x41, 0x49, 0x4c, 0x10, 0x00, 0x12, 0x0b, 0x0a, + 0x07, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x01, 0x2a, 0x2e, 0x0a, 0x09, 0x49, 0x54, + 0x45, 0x4d, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x12, 0x0a, 0x0a, 0x06, 0x45, 0x4e, 0x45, 0x52, 0x47, + 0x59, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x53, 0x54, 0x41, 0x52, 0x10, 0x01, 0x12, 0x0b, 0x0a, + 0x07, 0x44, 0x49, 0x41, 0x4d, 0x4f, 0x4e, 0x44, 0x10, 0x02, 0x42, 0x08, 0x5a, 0x06, 0x2e, 0x2e, + 0x2f, 0x6d, 0x73, 0x67, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -36797,7 +37232,7 @@ func file_Gameapi_proto_rawDescGZIP() []byte { } var file_Gameapi_proto_enumTypes = make([]protoimpl.EnumInfo, 4) -var file_Gameapi_proto_msgTypes = make([]protoimpl.MessageInfo, 646) +var file_Gameapi_proto_msgTypes = make([]protoimpl.MessageInfo, 654) var file_Gameapi_proto_goTypes = []any{ (HANDLE_TYPE)(0), // 0: tutorial.HANDLE_TYPE (RES_CODE)(0), // 1: tutorial.RES_CODE @@ -37376,146 +37811,154 @@ var file_Gameapi_proto_goTypes = []any{ (*ActivityNotify)(nil), // 574: tutorial.ActivityNotify (*ResItem)(nil), // 575: tutorial.ResItem (*ItemNotify)(nil), // 576: tutorial.ItemNotify - nil, // 577: tutorial.UpdateBaseItemInfo.MUpdateItemEntry - nil, // 578: tutorial.ResPlayerEmitUnlockData.MEmitUnlockDataEntry - nil, // 579: tutorial.NotifyDailyRenewEmitUnlock.MEmitUnlockDataEntry - nil, // 580: tutorial.UpdatePlayerEmitUnlockData.MEmitUnlockDataEntry - nil, // 581: tutorial.ResPlayerPackData.MPackDataEntry - nil, // 582: tutorial.UpdatePlayerPackData.MPackDataEntry - nil, // 583: tutorial.ResPlayerChessData.MChessDataEntry - nil, // 584: tutorial.UpdatePlayerChessData.MChessDataEntry - nil, // 585: tutorial.ReqGetChessFromBuff.MChessDataEntry - nil, // 586: tutorial.ReqChessEx.MChessDataEntry - nil, // 587: tutorial.ReqPutChessInBag.MChessDataEntry - nil, // 588: tutorial.ReqTakeChessOutBag.MChessDataEntry - nil, // 589: tutorial.ResPlayerGiftData.MGiftDataEntry - nil, // 590: tutorial.UpdatePlayerGiftData.MGiftDataEntry - nil, // 591: tutorial.ResPlayerOrderData.MOrderDataEntry - nil, // 592: tutorial.UpdatePlayerOrderData.MOrderDataEntry - nil, // 593: tutorial.ResChessColorData.MChessColorDataEntry - nil, // 594: tutorial.UpdateChessColorData.MChessColorDataEntry - nil, // 595: tutorial.ResEmitMergeMap.MEmitMergeDataEntry - nil, // 596: tutorial.UpdateEmitMergeMap.MEmitMergeDataEntry - nil, // 597: tutorial.ResEmitCountMap.MEmitCountDataEntry - nil, // 598: tutorial.UpdateEmitCountMap.MEmitCountDataEntry - nil, // 599: tutorial.ResEmitCDStartData.MEmitCDDataEntry - nil, // 600: tutorial.NotifyInitEmitCDTimeData.MEmitCDDataEntry - nil, // 601: tutorial.NotifyEmitCDTimeEndData.MEmitCDDataEntry - nil, // 602: tutorial.ResDecorateData.MDecorateDataEntry - nil, // 603: tutorial.UpdateDecorateData.MDecorateDataEntry - nil, // 604: tutorial.ResShopData.MShopTimeBuyDataEntry - nil, // 605: tutorial.ResShopData.MShopSaleBuyDataEntry - nil, // 606: tutorial.ResShopData.MPackBuyDataEntry - nil, // 607: tutorial.ResShopData.MSpecialOfferBuyDataEntry - nil, // 608: tutorial.ResShopData.MUISpecialOfferBuyDataEntry - nil, // 609: tutorial.ResShopData.MFreePackBuyDataEntry - nil, // 610: tutorial.ResShopData.MDiamondFirstBuyDataEntry - nil, // 611: tutorial.NotifyShopStatusChange.MShopTimeBuyDataEntry - nil, // 612: tutorial.ResShopBuy.MShopTimeBuyDataEntry - nil, // 613: tutorial.ReqRenewItemBuyCnt.MShopDataEntry - nil, // 614: tutorial.ResRenewItemBuyCnt.MShopTimeBuyDataEntry - nil, // 615: tutorial.ResKeyValueData.KeyValuesEntry - nil, // 616: tutorial.UpdateKeyValueData.KeyValuesEntry - nil, // 617: tutorial.ResAdPackData.PackDataEntry - nil, // 618: tutorial.NotifyAdPackData.PackDataEntry - nil, // 619: tutorial.ResWatchAdPack.PackDataEntry - nil, // 620: tutorial.ResPetHomeData.SelectDecorateMapEntry - nil, // 621: tutorial.ReqSaveSelectDecorate.SelectDecorateMapEntry - nil, // 622: tutorial.ResSaveSelectDecorate.SelectDecorateMapEntry - nil, // 623: tutorial.ResOpenOtherPetHome.SelectDecorateMapEntry - nil, // 624: tutorial.ResShiftVisitPet.SelectDecorateMapEntry - nil, // 625: tutorial.UseItemRequest.AttrsEntry - nil, // 626: tutorial.UseItemResponse.AttrsEntry - nil, // 627: tutorial.ReqRewardOrder.MChessDataEntry - nil, // 628: tutorial.ResCardInfo.AllCardEntry - nil, // 629: tutorial.ResGuildInfo.RewardEntry - nil, // 630: tutorial.ResDailyTask.WeekRewardEntry - nil, // 631: tutorial.ResDailyTask.DailyTaskEntry - nil, // 632: tutorial.ResLimitEvent.LimitEventListEntry - nil, // 633: tutorial.ResLimitEventProgress.ProgressRewardEntry - nil, // 634: tutorial.ResKv.KvEntry - nil, // 635: tutorial.ResRank.RankListEntry - nil, // 636: tutorial.ResMailList.MailListEntry - nil, // 637: tutorial.ResCharge.SpecialShopEntry - nil, // 638: tutorial.ResCharge.ChessShopEntry - nil, // 639: tutorial.ResCharge.GiftEntry - nil, // 640: tutorial.ResEndless.EndlessListEntry - nil, // 641: tutorial.ResChampshipRank.RankListEntry - nil, // 642: tutorial.ResChampshipPreRank.RankListEntry - nil, // 643: tutorial.ResNotifyCard.CardEntry - nil, // 644: tutorial.ResNotifyCard.MasterEntry - nil, // 645: tutorial.ResMining.MapEntry - nil, // 646: tutorial.ReqMiningTake.MapEntry - nil, // 647: tutorial.ResActRed.RedEntry - nil, // 648: tutorial.ResItem.ItemEntry - nil, // 649: tutorial.ItemNotify.ItemEntry + (*ReqGuessColor)(nil), // 577: tutorial.ReqGuessColor + (*ResGuessColor)(nil), // 578: tutorial.ResGuessColor + (*Opponent)(nil), // 579: tutorial.opponent + (*ReqGuessColorTake)(nil), // 580: tutorial.ReqGuessColorTake + (*ResGuessColorTake)(nil), // 581: tutorial.ResGuessColorTake + (*ReqGuessColorReward)(nil), // 582: tutorial.ReqGuessColorReward + (*ResGuessColorReward)(nil), // 583: tutorial.ResGuessColorReward + nil, // 584: tutorial.UpdateBaseItemInfo.MUpdateItemEntry + nil, // 585: tutorial.ResPlayerEmitUnlockData.MEmitUnlockDataEntry + nil, // 586: tutorial.NotifyDailyRenewEmitUnlock.MEmitUnlockDataEntry + nil, // 587: tutorial.UpdatePlayerEmitUnlockData.MEmitUnlockDataEntry + nil, // 588: tutorial.ResPlayerPackData.MPackDataEntry + nil, // 589: tutorial.UpdatePlayerPackData.MPackDataEntry + nil, // 590: tutorial.ResPlayerChessData.MChessDataEntry + nil, // 591: tutorial.UpdatePlayerChessData.MChessDataEntry + nil, // 592: tutorial.ReqGetChessFromBuff.MChessDataEntry + nil, // 593: tutorial.ReqChessEx.MChessDataEntry + nil, // 594: tutorial.ReqPutChessInBag.MChessDataEntry + nil, // 595: tutorial.ReqTakeChessOutBag.MChessDataEntry + nil, // 596: tutorial.ResPlayerGiftData.MGiftDataEntry + nil, // 597: tutorial.UpdatePlayerGiftData.MGiftDataEntry + nil, // 598: tutorial.ResPlayerOrderData.MOrderDataEntry + nil, // 599: tutorial.UpdatePlayerOrderData.MOrderDataEntry + nil, // 600: tutorial.ResChessColorData.MChessColorDataEntry + nil, // 601: tutorial.UpdateChessColorData.MChessColorDataEntry + nil, // 602: tutorial.ResEmitMergeMap.MEmitMergeDataEntry + nil, // 603: tutorial.UpdateEmitMergeMap.MEmitMergeDataEntry + nil, // 604: tutorial.ResEmitCountMap.MEmitCountDataEntry + nil, // 605: tutorial.UpdateEmitCountMap.MEmitCountDataEntry + nil, // 606: tutorial.ResEmitCDStartData.MEmitCDDataEntry + nil, // 607: tutorial.NotifyInitEmitCDTimeData.MEmitCDDataEntry + nil, // 608: tutorial.NotifyEmitCDTimeEndData.MEmitCDDataEntry + nil, // 609: tutorial.ResDecorateData.MDecorateDataEntry + nil, // 610: tutorial.UpdateDecorateData.MDecorateDataEntry + nil, // 611: tutorial.ResShopData.MShopTimeBuyDataEntry + nil, // 612: tutorial.ResShopData.MShopSaleBuyDataEntry + nil, // 613: tutorial.ResShopData.MPackBuyDataEntry + nil, // 614: tutorial.ResShopData.MSpecialOfferBuyDataEntry + nil, // 615: tutorial.ResShopData.MUISpecialOfferBuyDataEntry + nil, // 616: tutorial.ResShopData.MFreePackBuyDataEntry + nil, // 617: tutorial.ResShopData.MDiamondFirstBuyDataEntry + nil, // 618: tutorial.NotifyShopStatusChange.MShopTimeBuyDataEntry + nil, // 619: tutorial.ResShopBuy.MShopTimeBuyDataEntry + nil, // 620: tutorial.ReqRenewItemBuyCnt.MShopDataEntry + nil, // 621: tutorial.ResRenewItemBuyCnt.MShopTimeBuyDataEntry + nil, // 622: tutorial.ResKeyValueData.KeyValuesEntry + nil, // 623: tutorial.UpdateKeyValueData.KeyValuesEntry + nil, // 624: tutorial.ResAdPackData.PackDataEntry + nil, // 625: tutorial.NotifyAdPackData.PackDataEntry + nil, // 626: tutorial.ResWatchAdPack.PackDataEntry + nil, // 627: tutorial.ResPetHomeData.SelectDecorateMapEntry + nil, // 628: tutorial.ReqSaveSelectDecorate.SelectDecorateMapEntry + nil, // 629: tutorial.ResSaveSelectDecorate.SelectDecorateMapEntry + nil, // 630: tutorial.ResOpenOtherPetHome.SelectDecorateMapEntry + nil, // 631: tutorial.ResShiftVisitPet.SelectDecorateMapEntry + nil, // 632: tutorial.UseItemRequest.AttrsEntry + nil, // 633: tutorial.UseItemResponse.AttrsEntry + nil, // 634: tutorial.ReqRewardOrder.MChessDataEntry + nil, // 635: tutorial.ResCardInfo.AllCardEntry + nil, // 636: tutorial.ResGuildInfo.RewardEntry + nil, // 637: tutorial.ResDailyTask.WeekRewardEntry + nil, // 638: tutorial.ResDailyTask.DailyTaskEntry + nil, // 639: tutorial.ResLimitEvent.LimitEventListEntry + nil, // 640: tutorial.ResLimitEventProgress.ProgressRewardEntry + nil, // 641: tutorial.ResKv.KvEntry + nil, // 642: tutorial.ResRank.RankListEntry + nil, // 643: tutorial.ResMailList.MailListEntry + nil, // 644: tutorial.ResCharge.SpecialShopEntry + nil, // 645: tutorial.ResCharge.ChessShopEntry + nil, // 646: tutorial.ResCharge.GiftEntry + nil, // 647: tutorial.ResEndless.EndlessListEntry + nil, // 648: tutorial.ResChampshipRank.RankListEntry + nil, // 649: tutorial.ResChampshipPreRank.RankListEntry + nil, // 650: tutorial.ResNotifyCard.CardEntry + nil, // 651: tutorial.ResNotifyCard.MasterEntry + nil, // 652: tutorial.ResMining.MapEntry + nil, // 653: tutorial.ReqMiningTake.MapEntry + nil, // 654: tutorial.ResActRed.RedEntry + nil, // 655: tutorial.ResItem.ItemEntry + nil, // 656: tutorial.ItemNotify.ItemEntry + nil, // 657: tutorial.ReqGuessColorTake.MapEntry } var file_Gameapi_proto_depIdxs = []int32{ - 577, // 0: tutorial.UpdateBaseItemInfo.mUpdateItem:type_name -> tutorial.UpdateBaseItemInfo.MUpdateItemEntry - 578, // 1: tutorial.ResPlayerEmitUnlockData.mEmitUnlockData:type_name -> tutorial.ResPlayerEmitUnlockData.MEmitUnlockDataEntry - 579, // 2: tutorial.NotifyDailyRenewEmitUnlock.mEmitUnlockData:type_name -> tutorial.NotifyDailyRenewEmitUnlock.MEmitUnlockDataEntry - 580, // 3: tutorial.UpdatePlayerEmitUnlockData.mEmitUnlockData:type_name -> tutorial.UpdatePlayerEmitUnlockData.MEmitUnlockDataEntry - 581, // 4: tutorial.ResPlayerPackData.mPackData:type_name -> tutorial.ResPlayerPackData.MPackDataEntry - 582, // 5: tutorial.UpdatePlayerPackData.mPackData:type_name -> tutorial.UpdatePlayerPackData.MPackDataEntry - 583, // 6: tutorial.ResPlayerChessData.mChessData:type_name -> tutorial.ResPlayerChessData.MChessDataEntry + 584, // 0: tutorial.UpdateBaseItemInfo.mUpdateItem:type_name -> tutorial.UpdateBaseItemInfo.MUpdateItemEntry + 585, // 1: tutorial.ResPlayerEmitUnlockData.mEmitUnlockData:type_name -> tutorial.ResPlayerEmitUnlockData.MEmitUnlockDataEntry + 586, // 2: tutorial.NotifyDailyRenewEmitUnlock.mEmitUnlockData:type_name -> tutorial.NotifyDailyRenewEmitUnlock.MEmitUnlockDataEntry + 587, // 3: tutorial.UpdatePlayerEmitUnlockData.mEmitUnlockData:type_name -> tutorial.UpdatePlayerEmitUnlockData.MEmitUnlockDataEntry + 588, // 4: tutorial.ResPlayerPackData.mPackData:type_name -> tutorial.ResPlayerPackData.MPackDataEntry + 589, // 5: tutorial.UpdatePlayerPackData.mPackData:type_name -> tutorial.UpdatePlayerPackData.MPackDataEntry + 590, // 6: tutorial.ResPlayerChessData.mChessData:type_name -> tutorial.ResPlayerChessData.MChessDataEntry 37, // 7: tutorial.ResPlayerChessInfo.ChessBag:type_name -> tutorial.ChessBag 0, // 8: tutorial.ChessHandle.type:type_name -> tutorial.HANDLE_TYPE - 584, // 9: tutorial.UpdatePlayerChessData.mChessData:type_name -> tutorial.UpdatePlayerChessData.MChessDataEntry + 591, // 9: tutorial.UpdatePlayerChessData.mChessData:type_name -> tutorial.UpdatePlayerChessData.MChessDataEntry 30, // 10: tutorial.UpdatePlayerChessData.mChessHandle:type_name -> tutorial.ChessHandle 1, // 11: tutorial.ResUpdatePlayerChessData.code:type_name -> tutorial.RES_CODE - 585, // 12: tutorial.ReqGetChessFromBuff.mChessData:type_name -> tutorial.ReqGetChessFromBuff.MChessDataEntry + 592, // 12: tutorial.ReqGetChessFromBuff.mChessData:type_name -> tutorial.ReqGetChessFromBuff.MChessDataEntry 1, // 13: tutorial.ResGetChessFromBuff.code:type_name -> tutorial.RES_CODE - 586, // 14: tutorial.ReqChessEx.mChessData:type_name -> tutorial.ReqChessEx.MChessDataEntry + 593, // 14: tutorial.ReqChessEx.mChessData:type_name -> tutorial.ReqChessEx.MChessDataEntry 1, // 15: tutorial.ResChessEx.code:type_name -> tutorial.RES_CODE 38, // 16: tutorial.ChessBag.ChessBagGrids:type_name -> tutorial.ChessBagGrid - 587, // 17: tutorial.ReqPutChessInBag.mChessData:type_name -> tutorial.ReqPutChessInBag.MChessDataEntry + 594, // 17: tutorial.ReqPutChessInBag.mChessData:type_name -> tutorial.ReqPutChessInBag.MChessDataEntry 1, // 18: tutorial.ResPutChessInBag.code:type_name -> tutorial.RES_CODE - 588, // 19: tutorial.ReqTakeChessOutBag.mChessData:type_name -> tutorial.ReqTakeChessOutBag.MChessDataEntry + 595, // 19: tutorial.ReqTakeChessOutBag.mChessData:type_name -> tutorial.ReqTakeChessOutBag.MChessDataEntry 1, // 20: tutorial.ResTakeChessOutBag.code:type_name -> tutorial.RES_CODE 1, // 21: tutorial.ResBuyChessBagGrid.code:type_name -> tutorial.RES_CODE - 589, // 22: tutorial.ResPlayerGiftData.mGiftData:type_name -> tutorial.ResPlayerGiftData.MGiftDataEntry - 590, // 23: tutorial.UpdatePlayerGiftData.mGiftData:type_name -> tutorial.UpdatePlayerGiftData.MGiftDataEntry - 591, // 24: tutorial.ResPlayerOrderData.mOrderData:type_name -> tutorial.ResPlayerOrderData.MOrderDataEntry - 592, // 25: tutorial.UpdatePlayerOrderData.mOrderData:type_name -> tutorial.UpdatePlayerOrderData.MOrderDataEntry - 593, // 26: tutorial.ResChessColorData.mChessColorData:type_name -> tutorial.ResChessColorData.MChessColorDataEntry - 594, // 27: tutorial.UpdateChessColorData.mChessColorData:type_name -> tutorial.UpdateChessColorData.MChessColorDataEntry - 595, // 28: tutorial.ResEmitMergeMap.mEmitMergeData:type_name -> tutorial.ResEmitMergeMap.MEmitMergeDataEntry - 596, // 29: tutorial.UpdateEmitMergeMap.mEmitMergeData:type_name -> tutorial.UpdateEmitMergeMap.MEmitMergeDataEntry - 597, // 30: tutorial.ResEmitCountMap.mEmitCountData:type_name -> tutorial.ResEmitCountMap.MEmitCountDataEntry - 598, // 31: tutorial.UpdateEmitCountMap.mEmitCountData:type_name -> tutorial.UpdateEmitCountMap.MEmitCountDataEntry - 599, // 32: tutorial.ResEmitCDStartData.mEmitCDData:type_name -> tutorial.ResEmitCDStartData.MEmitCDDataEntry - 600, // 33: tutorial.NotifyInitEmitCDTimeData.mEmitCDData:type_name -> tutorial.NotifyInitEmitCDTimeData.MEmitCDDataEntry - 601, // 34: tutorial.NotifyEmitCDTimeEndData.mEmitCDData:type_name -> tutorial.NotifyEmitCDTimeEndData.MEmitCDDataEntry - 602, // 35: tutorial.ResDecorateData.mDecorateData:type_name -> tutorial.ResDecorateData.MDecorateDataEntry - 603, // 36: tutorial.UpdateDecorateData.mDecorateData:type_name -> tutorial.UpdateDecorateData.MDecorateDataEntry - 604, // 37: tutorial.ResShopData.mShopTimeBuyData:type_name -> tutorial.ResShopData.MShopTimeBuyDataEntry - 605, // 38: tutorial.ResShopData.mShopSaleBuyData:type_name -> tutorial.ResShopData.MShopSaleBuyDataEntry - 606, // 39: tutorial.ResShopData.mPackBuyData:type_name -> tutorial.ResShopData.MPackBuyDataEntry - 607, // 40: tutorial.ResShopData.mSpecialOfferBuyData:type_name -> tutorial.ResShopData.MSpecialOfferBuyDataEntry - 608, // 41: tutorial.ResShopData.mUISpecialOfferBuyData:type_name -> tutorial.ResShopData.MUISpecialOfferBuyDataEntry - 609, // 42: tutorial.ResShopData.mFreePackBuyData:type_name -> tutorial.ResShopData.MFreePackBuyDataEntry - 610, // 43: tutorial.ResShopData.mDiamondFirstBuyData:type_name -> tutorial.ResShopData.MDiamondFirstBuyDataEntry - 611, // 44: tutorial.NotifyShopStatusChange.mShopTimeBuyData:type_name -> tutorial.NotifyShopStatusChange.MShopTimeBuyDataEntry - 612, // 45: tutorial.ResShopBuy.mShopTimeBuyData:type_name -> tutorial.ResShopBuy.MShopTimeBuyDataEntry - 613, // 46: tutorial.ReqRenewItemBuyCnt.mShopData:type_name -> tutorial.ReqRenewItemBuyCnt.MShopDataEntry - 614, // 47: tutorial.ResRenewItemBuyCnt.mShopTimeBuyData:type_name -> tutorial.ResRenewItemBuyCnt.MShopTimeBuyDataEntry + 596, // 22: tutorial.ResPlayerGiftData.mGiftData:type_name -> tutorial.ResPlayerGiftData.MGiftDataEntry + 597, // 23: tutorial.UpdatePlayerGiftData.mGiftData:type_name -> tutorial.UpdatePlayerGiftData.MGiftDataEntry + 598, // 24: tutorial.ResPlayerOrderData.mOrderData:type_name -> tutorial.ResPlayerOrderData.MOrderDataEntry + 599, // 25: tutorial.UpdatePlayerOrderData.mOrderData:type_name -> tutorial.UpdatePlayerOrderData.MOrderDataEntry + 600, // 26: tutorial.ResChessColorData.mChessColorData:type_name -> tutorial.ResChessColorData.MChessColorDataEntry + 601, // 27: tutorial.UpdateChessColorData.mChessColorData:type_name -> tutorial.UpdateChessColorData.MChessColorDataEntry + 602, // 28: tutorial.ResEmitMergeMap.mEmitMergeData:type_name -> tutorial.ResEmitMergeMap.MEmitMergeDataEntry + 603, // 29: tutorial.UpdateEmitMergeMap.mEmitMergeData:type_name -> tutorial.UpdateEmitMergeMap.MEmitMergeDataEntry + 604, // 30: tutorial.ResEmitCountMap.mEmitCountData:type_name -> tutorial.ResEmitCountMap.MEmitCountDataEntry + 605, // 31: tutorial.UpdateEmitCountMap.mEmitCountData:type_name -> tutorial.UpdateEmitCountMap.MEmitCountDataEntry + 606, // 32: tutorial.ResEmitCDStartData.mEmitCDData:type_name -> tutorial.ResEmitCDStartData.MEmitCDDataEntry + 607, // 33: tutorial.NotifyInitEmitCDTimeData.mEmitCDData:type_name -> tutorial.NotifyInitEmitCDTimeData.MEmitCDDataEntry + 608, // 34: tutorial.NotifyEmitCDTimeEndData.mEmitCDData:type_name -> tutorial.NotifyEmitCDTimeEndData.MEmitCDDataEntry + 609, // 35: tutorial.ResDecorateData.mDecorateData:type_name -> tutorial.ResDecorateData.MDecorateDataEntry + 610, // 36: tutorial.UpdateDecorateData.mDecorateData:type_name -> tutorial.UpdateDecorateData.MDecorateDataEntry + 611, // 37: tutorial.ResShopData.mShopTimeBuyData:type_name -> tutorial.ResShopData.MShopTimeBuyDataEntry + 612, // 38: tutorial.ResShopData.mShopSaleBuyData:type_name -> tutorial.ResShopData.MShopSaleBuyDataEntry + 613, // 39: tutorial.ResShopData.mPackBuyData:type_name -> tutorial.ResShopData.MPackBuyDataEntry + 614, // 40: tutorial.ResShopData.mSpecialOfferBuyData:type_name -> tutorial.ResShopData.MSpecialOfferBuyDataEntry + 615, // 41: tutorial.ResShopData.mUISpecialOfferBuyData:type_name -> tutorial.ResShopData.MUISpecialOfferBuyDataEntry + 616, // 42: tutorial.ResShopData.mFreePackBuyData:type_name -> tutorial.ResShopData.MFreePackBuyDataEntry + 617, // 43: tutorial.ResShopData.mDiamondFirstBuyData:type_name -> tutorial.ResShopData.MDiamondFirstBuyDataEntry + 618, // 44: tutorial.NotifyShopStatusChange.mShopTimeBuyData:type_name -> tutorial.NotifyShopStatusChange.MShopTimeBuyDataEntry + 619, // 45: tutorial.ResShopBuy.mShopTimeBuyData:type_name -> tutorial.ResShopBuy.MShopTimeBuyDataEntry + 620, // 46: tutorial.ReqRenewItemBuyCnt.mShopData:type_name -> tutorial.ReqRenewItemBuyCnt.MShopDataEntry + 621, // 47: tutorial.ResRenewItemBuyCnt.mShopTimeBuyData:type_name -> tutorial.ResRenewItemBuyCnt.MShopTimeBuyDataEntry 89, // 48: tutorial.ResBriefEmailData.mEmailList:type_name -> tutorial.BriefEmailStruct 89, // 49: tutorial.NotifyNewBriefEmailData.mEmailList:type_name -> tutorial.BriefEmailStruct 99, // 50: tutorial.NotifyLimitedTimeActiveData.mActiveList:type_name -> tutorial.LimitedTimeActiveStruct 100, // 51: tutorial.NotifyLimitedTimeActiveEnd.mActiveList:type_name -> tutorial.LimitedTimeEndStruct 154, // 52: tutorial.CategoryIllustratedData.Items:type_name -> tutorial.SingleIllustratedItem 155, // 53: tutorial.ResIllustratedInfo.Datas:type_name -> tutorial.CategoryIllustratedData - 615, // 54: tutorial.ResKeyValueData.KeyValues:type_name -> tutorial.ResKeyValueData.KeyValuesEntry - 616, // 55: tutorial.UpdateKeyValueData.KeyValues:type_name -> tutorial.UpdateKeyValueData.KeyValuesEntry + 622, // 54: tutorial.ResKeyValueData.KeyValues:type_name -> tutorial.ResKeyValueData.KeyValuesEntry + 623, // 55: tutorial.UpdateKeyValueData.KeyValues:type_name -> tutorial.UpdateKeyValueData.KeyValuesEntry 203, // 56: tutorial.ResChampshipData.GroupRankDataList:type_name -> tutorial.ChampshipsPlayerInfo 203, // 57: tutorial.NotifyNewChampshipRank.GroupRankDataList:type_name -> tutorial.ChampshipsPlayerInfo 203, // 58: tutorial.NotifyUpdateChampshipRank.GroupRankDataList:type_name -> tutorial.ChampshipsPlayerInfo 203, // 59: tutorial.ResChampshipAddScore.GroupRankDataList:type_name -> tutorial.ChampshipsPlayerInfo 203, // 60: tutorial.ResChampshipAddTime.GroupRankDataList:type_name -> tutorial.ChampshipsPlayerInfo 217, // 61: tutorial.ResPlayerPayData.PlayerPayData:type_name -> tutorial.PlayerPayItem - 617, // 62: tutorial.ResAdPackData.PackData:type_name -> tutorial.ResAdPackData.PackDataEntry - 618, // 63: tutorial.NotifyAdPackData.PackData:type_name -> tutorial.NotifyAdPackData.PackDataEntry - 619, // 64: tutorial.ResWatchAdPack.PackData:type_name -> tutorial.ResWatchAdPack.PackDataEntry + 624, // 62: tutorial.ResAdPackData.PackData:type_name -> tutorial.ResAdPackData.PackDataEntry + 625, // 63: tutorial.NotifyAdPackData.PackData:type_name -> tutorial.NotifyAdPackData.PackDataEntry + 626, // 64: tutorial.ResWatchAdPack.PackData:type_name -> tutorial.ResWatchAdPack.PackDataEntry 262, // 65: tutorial.ResFriendData.FriendInfos:type_name -> tutorial.FriendInfo 262, // 66: tutorial.AddFriendData.Finfo:type_name -> tutorial.FriendInfo 262, // 67: tutorial.ResWillPlayerDetail.PlayerInfos:type_name -> tutorial.FriendInfo @@ -37563,21 +38006,21 @@ var file_Gameapi_proto_depIdxs = []int32{ 341, // 109: tutorial.ResFriendEventData.MFriendEventData:type_name -> tutorial.FriendEventData 341, // 110: tutorial.NotifyNewFriendEvent.NewEvent:type_name -> tutorial.FriendEventData 257, // 111: tutorial.PetHomeInterActST.BriefProfile:type_name -> tutorial.ResPlayerBriefProfileData - 620, // 112: tutorial.ResPetHomeData.SelectDecorateMap:type_name -> tutorial.ResPetHomeData.SelectDecorateMapEntry - 621, // 113: tutorial.ReqSaveSelectDecorate.SelectDecorateMap:type_name -> tutorial.ReqSaveSelectDecorate.SelectDecorateMapEntry - 622, // 114: tutorial.ResSaveSelectDecorate.SelectDecorateMap:type_name -> tutorial.ResSaveSelectDecorate.SelectDecorateMapEntry + 627, // 112: tutorial.ResPetHomeData.SelectDecorateMap:type_name -> tutorial.ResPetHomeData.SelectDecorateMapEntry + 628, // 113: tutorial.ReqSaveSelectDecorate.SelectDecorateMap:type_name -> tutorial.ReqSaveSelectDecorate.SelectDecorateMapEntry + 629, // 114: tutorial.ResSaveSelectDecorate.SelectDecorateMap:type_name -> tutorial.ResSaveSelectDecorate.SelectDecorateMapEntry 257, // 115: tutorial.ResOpenOtherPetHome.BriefProfile:type_name -> tutorial.ResPlayerBriefProfileData - 623, // 116: tutorial.ResOpenOtherPetHome.SelectDecorateMap:type_name -> tutorial.ResOpenOtherPetHome.SelectDecorateMapEntry + 630, // 116: tutorial.ResOpenOtherPetHome.SelectDecorateMap:type_name -> tutorial.ResOpenOtherPetHome.SelectDecorateMapEntry 349, // 117: tutorial.ResPetHomeInterActST.mPetHomeInterActSTs:type_name -> tutorial.PetHomeInterActST 257, // 118: tutorial.ResShiftVisitPet.BriefProfile:type_name -> tutorial.ResPlayerBriefProfileData - 624, // 119: tutorial.ResShiftVisitPet.SelectDecorateMap:type_name -> tutorial.ResShiftVisitPet.SelectDecorateMapEntry + 631, // 119: tutorial.ResShiftVisitPet.SelectDecorateMap:type_name -> tutorial.ResShiftVisitPet.SelectDecorateMapEntry 372, // 120: tutorial.UseItemRequest.items:type_name -> tutorial.Item 371, // 121: tutorial.UseItemRequest.price:type_name -> tutorial.IntPack - 625, // 122: tutorial.UseItemRequest.attrs:type_name -> tutorial.UseItemRequest.AttrsEntry + 632, // 122: tutorial.UseItemRequest.attrs:type_name -> tutorial.UseItemRequest.AttrsEntry 3, // 123: tutorial.UseItemResponse.code:type_name -> tutorial.UseItemResponse.CODE 372, // 124: tutorial.UseItemResponse.items:type_name -> tutorial.Item 371, // 125: tutorial.UseItemResponse.price:type_name -> tutorial.IntPack - 626, // 126: tutorial.UseItemResponse.attrs:type_name -> tutorial.UseItemResponse.AttrsEntry + 633, // 126: tutorial.UseItemResponse.attrs:type_name -> tutorial.UseItemResponse.AttrsEntry 1, // 127: tutorial.ResSetEnergyMul.ResultCode:type_name -> tutorial.RES_CODE 454, // 128: tutorial.UserInfo.AvatarList:type_name -> tutorial.AvatarInfo 450, // 129: tutorial.UserInfo.FaceList:type_name -> tutorial.FaceInfo @@ -37585,13 +38028,13 @@ var file_Gameapi_proto_depIdxs = []int32{ 1, // 131: tutorial.ResBuyEnergy.Code:type_name -> tutorial.RES_CODE 386, // 132: tutorial.Handbook.Handbooks:type_name -> tutorial.HandbookInfo 1, // 133: tutorial.ResGetHandbookReward.Code:type_name -> tutorial.RES_CODE - 627, // 134: tutorial.ReqRewardOrder.mChessData:type_name -> tutorial.ReqRewardOrder.MChessDataEntry + 634, // 134: tutorial.ReqRewardOrder.mChessData:type_name -> tutorial.ReqRewardOrder.MChessDataEntry 1, // 135: tutorial.ResRewardOrder.Code:type_name -> tutorial.RES_CODE 391, // 136: tutorial.ResOrderList.OrderList:type_name -> tutorial.Order 1, // 137: tutorial.ResDecorate.Code:type_name -> tutorial.RES_CODE 1, // 138: tutorial.ResDecorateAll.Code:type_name -> tutorial.RES_CODE 399, // 139: tutorial.ResCardInfo.CardList:type_name -> tutorial.Card - 628, // 140: tutorial.ResCardInfo.AllCard:type_name -> tutorial.ResCardInfo.AllCardEntry + 635, // 140: tutorial.ResCardInfo.AllCard:type_name -> tutorial.ResCardInfo.AllCardEntry 1, // 141: tutorial.ResMasterCard.Code:type_name -> tutorial.RES_CODE 1, // 142: tutorial.ResCardCollectReward.Code:type_name -> tutorial.RES_CODE 1, // 143: tutorial.ResExStarReward.Code:type_name -> tutorial.RES_CODE @@ -37607,11 +38050,11 @@ var file_Gameapi_proto_depIdxs = []int32{ 1, // 153: tutorial.ResRefuseCardExchange.Code:type_name -> tutorial.RES_CODE 1, // 154: tutorial.ResGetFriendCard.Code:type_name -> tutorial.RES_CODE 1, // 155: tutorial.ResGuideReward.Code:type_name -> tutorial.RES_CODE - 629, // 156: tutorial.ResGuildInfo.Reward:type_name -> tutorial.ResGuildInfo.RewardEntry + 636, // 156: tutorial.ResGuildInfo.Reward:type_name -> tutorial.ResGuildInfo.RewardEntry 437, // 157: tutorial.ResItemPop.Items:type_name -> tutorial.ItemInfo 438, // 158: tutorial.ResItemPop.CardPacks:type_name -> tutorial.CardPack - 630, // 159: tutorial.ResDailyTask.WeekReward:type_name -> tutorial.ResDailyTask.WeekRewardEntry - 631, // 160: tutorial.ResDailyTask.DailyTask:type_name -> tutorial.ResDailyTask.DailyTaskEntry + 637, // 159: tutorial.ResDailyTask.WeekReward:type_name -> tutorial.ResDailyTask.WeekRewardEntry + 638, // 160: tutorial.ResDailyTask.DailyTask:type_name -> tutorial.ResDailyTask.DailyTaskEntry 437, // 161: tutorial.DailyWeek.Items:type_name -> tutorial.ItemInfo 442, // 162: tutorial.DailyTask.Progress:type_name -> tutorial.QuestProgress 437, // 163: tutorial.DailyTask.Items:type_name -> tutorial.ItemInfo @@ -37630,8 +38073,8 @@ var file_Gameapi_proto_depIdxs = []int32{ 1, // 176: tutorial.ResGetSevenLoginReward.Code:type_name -> tutorial.RES_CODE 1, // 177: tutorial.ResGetMonthLoginReward.Code:type_name -> tutorial.RES_CODE 464, // 178: tutorial.ResActivity.ActiveList:type_name -> tutorial.ActivityInfo - 632, // 179: tutorial.ResLimitEvent.LimitEventList:type_name -> tutorial.ResLimitEvent.LimitEventListEntry - 633, // 180: tutorial.ResLimitEventProgress.ProgressReward:type_name -> tutorial.ResLimitEventProgress.ProgressRewardEntry + 639, // 179: tutorial.ResLimitEvent.LimitEventList:type_name -> tutorial.ResLimitEvent.LimitEventListEntry + 640, // 180: tutorial.ResLimitEventProgress.ProgressReward:type_name -> tutorial.ResLimitEventProgress.ProgressRewardEntry 1, // 181: tutorial.ResLimitEventReward.Code:type_name -> tutorial.RES_CODE 1, // 182: tutorial.ResSelectLimitEvent.Code:type_name -> tutorial.RES_CODE 1, // 183: tutorial.ResLimitSenceReward.Code:type_name -> tutorial.RES_CODE @@ -37640,7 +38083,7 @@ var file_Gameapi_proto_depIdxs = []int32{ 481, // 186: tutorial.ResFriendLog.Player:type_name -> tutorial.ResPlayerSimple 483, // 187: tutorial.NotifyFriendLog.info:type_name -> tutorial.ResFriendLog 486, // 188: tutorial.NotifyFriendCard.Info:type_name -> tutorial.ResFriendCard - 634, // 189: tutorial.ResKv.kv:type_name -> tutorial.ResKv.KvEntry + 641, // 189: tutorial.ResKv.kv:type_name -> tutorial.ResKv.KvEntry 481, // 190: tutorial.ResFriendRecommend.List:type_name -> tutorial.ResPlayerSimple 1, // 191: tutorial.ResFriendIgnore.Code:type_name -> tutorial.RES_CODE 481, // 192: tutorial.ResFriendList.FriendList:type_name -> tutorial.ResPlayerSimple @@ -37654,54 +38097,58 @@ var file_Gameapi_proto_depIdxs = []int32{ 481, // 200: tutorial.ResAgreeFriend.Player:type_name -> tutorial.ResPlayerSimple 1, // 201: tutorial.ResRefuseFriend.Code:type_name -> tutorial.RES_CODE 1, // 202: tutorial.ResDelFriend.Code:type_name -> tutorial.RES_CODE - 635, // 203: tutorial.ResRank.RankList:type_name -> tutorial.ResRank.RankListEntry - 636, // 204: tutorial.ResMailList.MailList:type_name -> tutorial.ResMailList.MailListEntry + 642, // 203: tutorial.ResRank.RankList:type_name -> tutorial.ResRank.RankListEntry + 643, // 204: tutorial.ResMailList.MailList:type_name -> tutorial.ResMailList.MailListEntry 437, // 205: tutorial.MailInfo.Items:type_name -> tutorial.ItemInfo 515, // 206: tutorial.MailNotify.Info:type_name -> tutorial.MailInfo 1, // 207: tutorial.ResReadMail.Code:type_name -> tutorial.RES_CODE 1, // 208: tutorial.ResGetMailReward.Code:type_name -> tutorial.RES_CODE 1, // 209: tutorial.ResDeleteMail.Code:type_name -> tutorial.RES_CODE - 637, // 210: tutorial.ResCharge.SpecialShop:type_name -> tutorial.ResCharge.SpecialShopEntry - 638, // 211: tutorial.ResCharge.ChessShop:type_name -> tutorial.ResCharge.ChessShopEntry - 639, // 212: tutorial.ResCharge.Gift:type_name -> tutorial.ResCharge.GiftEntry + 644, // 210: tutorial.ResCharge.SpecialShop:type_name -> tutorial.ResCharge.SpecialShopEntry + 645, // 211: tutorial.ResCharge.ChessShop:type_name -> tutorial.ResCharge.ChessShopEntry + 646, // 212: tutorial.ResCharge.Gift:type_name -> tutorial.ResCharge.GiftEntry 1, // 213: tutorial.ResFreeShop.Code:type_name -> tutorial.RES_CODE 1, // 214: tutorial.ResBuyChessShop.Code:type_name -> tutorial.RES_CODE 1, // 215: tutorial.ResRefreshChessShop.Code:type_name -> tutorial.RES_CODE - 640, // 216: tutorial.ResEndless.EndlessList:type_name -> tutorial.ResEndless.EndlessListEntry + 647, // 216: tutorial.ResEndless.EndlessList:type_name -> tutorial.ResEndless.EndlessListEntry 437, // 217: tutorial.ResEndlessInfo.Items:type_name -> tutorial.ItemInfo 1, // 218: tutorial.ResEndlessReward.Code:type_name -> tutorial.RES_CODE 1, // 219: tutorial.ResPiggyBankReward.Code:type_name -> tutorial.RES_CODE 1, // 220: tutorial.ResShippingOrder.Code:type_name -> tutorial.RES_CODE 1, // 221: tutorial.ResChampshipReward.Code:type_name -> tutorial.RES_CODE 1, // 222: tutorial.ResChampshipRankReward.Code:type_name -> tutorial.RES_CODE - 641, // 223: tutorial.ResChampshipRank.RankList:type_name -> tutorial.ResChampshipRank.RankListEntry - 642, // 224: tutorial.ResChampshipPreRank.RankList:type_name -> tutorial.ResChampshipPreRank.RankListEntry - 643, // 225: tutorial.ResNotifyCard.Card:type_name -> tutorial.ResNotifyCard.CardEntry - 644, // 226: tutorial.ResNotifyCard.Master:type_name -> tutorial.ResNotifyCard.MasterEntry + 648, // 223: tutorial.ResChampshipRank.RankList:type_name -> tutorial.ResChampshipRank.RankListEntry + 649, // 224: tutorial.ResChampshipPreRank.RankList:type_name -> tutorial.ResChampshipPreRank.RankListEntry + 650, // 225: tutorial.ResNotifyCard.Card:type_name -> tutorial.ResNotifyCard.CardEntry + 651, // 226: tutorial.ResNotifyCard.Master:type_name -> tutorial.ResNotifyCard.MasterEntry 1, // 227: tutorial.ResSetFacebookUrl.Code:type_name -> tutorial.RES_CODE - 645, // 228: tutorial.ResMining.Map:type_name -> tutorial.ResMining.MapEntry - 646, // 229: tutorial.ReqMiningTake.Map:type_name -> tutorial.ReqMiningTake.MapEntry + 652, // 228: tutorial.ResMining.Map:type_name -> tutorial.ResMining.MapEntry + 653, // 229: tutorial.ReqMiningTake.Map:type_name -> tutorial.ReqMiningTake.MapEntry 1, // 230: tutorial.ResMiningTake.Code:type_name -> tutorial.RES_CODE 1, // 231: tutorial.ResMiningReward.Code:type_name -> tutorial.RES_CODE - 647, // 232: tutorial.ResActRed.Red:type_name -> tutorial.ResActRed.RedEntry + 654, // 232: tutorial.ResActRed.Red:type_name -> tutorial.ResActRed.RedEntry 464, // 233: tutorial.ActivityNotify.Info:type_name -> tutorial.ActivityInfo - 648, // 234: tutorial.ResItem.Item:type_name -> tutorial.ResItem.ItemEntry - 649, // 235: tutorial.ItemNotify.Item:type_name -> tutorial.ItemNotify.ItemEntry - 440, // 236: tutorial.ResDailyTask.WeekRewardEntry.value:type_name -> tutorial.DailyWeek - 441, // 237: tutorial.ResDailyTask.DailyTaskEntry.value:type_name -> tutorial.DailyTask - 472, // 238: tutorial.ResLimitEvent.LimitEventListEntry.value:type_name -> tutorial.LimitEvent - 481, // 239: tutorial.ResRank.RankListEntry.value:type_name -> tutorial.ResPlayerSimple - 515, // 240: tutorial.ResMailList.MailListEntry.value:type_name -> tutorial.MailInfo - 524, // 241: tutorial.ResCharge.SpecialShopEntry.value:type_name -> tutorial.ResSpecialShop - 525, // 242: tutorial.ResCharge.ChessShopEntry.value:type_name -> tutorial.ResChessShop - 534, // 243: tutorial.ResEndless.EndlessListEntry.value:type_name -> tutorial.ResEndlessInfo - 482, // 244: tutorial.ResChampshipRank.RankListEntry.value:type_name -> tutorial.ResPlayerRank - 482, // 245: tutorial.ResChampshipPreRank.RankListEntry.value:type_name -> tutorial.ResPlayerRank - 246, // [246:246] is the sub-list for method output_type - 246, // [246:246] is the sub-list for method input_type - 246, // [246:246] is the sub-list for extension type_name - 246, // [246:246] is the sub-list for extension extendee - 0, // [0:246] is the sub-list for field type_name + 655, // 234: tutorial.ResItem.Item:type_name -> tutorial.ResItem.ItemEntry + 656, // 235: tutorial.ItemNotify.Item:type_name -> tutorial.ItemNotify.ItemEntry + 579, // 236: tutorial.ResGuessColor.Opponent:type_name -> tutorial.opponent + 657, // 237: tutorial.ReqGuessColorTake.Map:type_name -> tutorial.ReqGuessColorTake.MapEntry + 1, // 238: tutorial.ResGuessColorTake.Code:type_name -> tutorial.RES_CODE + 1, // 239: tutorial.ResGuessColorReward.Code:type_name -> tutorial.RES_CODE + 440, // 240: tutorial.ResDailyTask.WeekRewardEntry.value:type_name -> tutorial.DailyWeek + 441, // 241: tutorial.ResDailyTask.DailyTaskEntry.value:type_name -> tutorial.DailyTask + 472, // 242: tutorial.ResLimitEvent.LimitEventListEntry.value:type_name -> tutorial.LimitEvent + 481, // 243: tutorial.ResRank.RankListEntry.value:type_name -> tutorial.ResPlayerSimple + 515, // 244: tutorial.ResMailList.MailListEntry.value:type_name -> tutorial.MailInfo + 524, // 245: tutorial.ResCharge.SpecialShopEntry.value:type_name -> tutorial.ResSpecialShop + 525, // 246: tutorial.ResCharge.ChessShopEntry.value:type_name -> tutorial.ResChessShop + 534, // 247: tutorial.ResEndless.EndlessListEntry.value:type_name -> tutorial.ResEndlessInfo + 482, // 248: tutorial.ResChampshipRank.RankListEntry.value:type_name -> tutorial.ResPlayerRank + 482, // 249: tutorial.ResChampshipPreRank.RankListEntry.value:type_name -> tutorial.ResPlayerRank + 250, // [250:250] is the sub-list for method output_type + 250, // [250:250] is the sub-list for method input_type + 250, // [250:250] is the sub-list for extension type_name + 250, // [250:250] is the sub-list for extension extendee + 0, // [0:250] is the sub-list for field type_name } func init() { file_Gameapi_proto_init() } @@ -37715,7 +38162,7 @@ func file_Gameapi_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_Gameapi_proto_rawDesc, NumEnums: 4, - NumMessages: 646, + NumMessages: 654, NumExtensions: 0, NumServices: 0, },