宠物币礼包

This commit is contained in:
hahwu 2025-05-30 11:31:10 +08:00
parent f7089c55a7
commit 6437df189b
3 changed files with 310 additions and 252 deletions

View File

@ -9,14 +9,15 @@ import (
)
const (
CFG_CHARGE = "Charge"
CFG_DIAMOND_SHOP = "DiamondShop"
CFG_ENERGY_SHOP = "EnergyShop"
CFG_SEPCIAL_SHOP = "SpecialShop"
CFG_FREE_SHOP = "FreeShop"
CFG_CHARGE_CONST = "ChargeConst"
CFG_CHARGE_GIFT = "ChargeGift"
CFG_CHARGE_WISH = "ChargeWish"
CFG_CHARGE = "Charge"
CFG_DIAMOND_SHOP = "DiamondShop"
CFG_ENERGY_SHOP = "EnergyShop"
CFG_SEPCIAL_SHOP = "SpecialShop"
CFG_FREE_SHOP = "FreeShop"
CFG_CHARGE_CONST = "ChargeConst"
CFG_CHARGE_GIFT = "ChargeGift"
CFG_CHARGE_WISH = "ChargeWish"
CFG_CHARGE_PETCOIN = "ChargePetCoin" // 宠物币充值配置
)
func init() {
@ -28,6 +29,7 @@ func init() {
gamedata.InitCfg(CFG_CHARGE_CONST)
gamedata.InitCfg(CFG_CHARGE_GIFT)
gamedata.InitCfg(CFG_CHARGE_WISH)
gamedata.InitCfg(CFG_CHARGE_PETCOIN)
}
func GetMoneyCharge(ChargeId int) float64 {
@ -261,3 +263,12 @@ func GetWishCount(ItemId int) int {
}
return gamedata.GetIntValue(data, "Wish")
}
func GetPetCoinShopReward(ChargeId int) []*item.Item {
data, err := gamedata.GetDataByIntKey(CFG_CHARGE_PETCOIN, ChargeId)
if err != nil {
return nil
}
Item := gamedata.GetValue(data, "Items")
return item.ParseItem(Item)
}

View File

@ -12,13 +12,14 @@ import (
)
type ChargeMod struct {
FirstCharge int64 // 首次充值时间
LastCharge int64 // 最后一次充值时间
EnergyShop map[int]struct{} // 能量购买次数商店
MaxCharge float64 // 最大充值金额
Charge float64 // 总充值金额
Total int // 总充值次数
SpecialCharge float64 // 近35天最大充值金额
FirstCharge int64 // 首次充值时间
LastCharge int64 // 最后一次充值时间
EnergyShop map[int]struct{} // 能量购买次数商店
MaxCharge float64 // 最大充值金额
Charge float64 // 总充值金额
Total int // 总充值次数
LastSpecialCharge int64 // 近35天最大充值的充值时间
SpecialCharge float64 // 近35天最大充值金额
SpecialShop map[int]*SepcialShop // 特殊商店
FreeShop int // 已领取免费商店档次
@ -110,7 +111,7 @@ func (c *ChargeMod) ZeroUpdate(Emit []int) {
}
m := c.SpecialCharge
M := chargeCfg.GetSpecialShopGrade(m, i)
a := min(2, GoUtil.FullWeeksSince(c.LastCharge))
a := min(2, GoUtil.FullWeeksSince(c.LastSpecialCharge))
SpecialGrade = max(1, M-a)
c.SpecialShop[i] = &SepcialShop{Grade: SpecialGrade, Count: SpecialShopCount}
}
@ -143,7 +144,10 @@ func (c *ChargeMod) Fire(ChargeId int) (Item []*item.Item) {
if Money > c.MaxCharge {
c.MaxCharge = Money
}
c.SpecialCharge = max(c.SpecialCharge, Money)
if Money > c.SpecialCharge {
c.LastSpecialCharge = Now
c.SpecialCharge = Money
}
Item = c.FireDiamondShop(ChargeId)
if Item != nil {
return
@ -156,6 +160,10 @@ func (c *ChargeMod) Fire(ChargeId int) (Item []*item.Item) {
if Item != nil {
return
}
Item = c.FirePetCoinShop(ChargeId)
if Item != nil {
return
}
Item = c.FireGift(ChargeId)
c.FireAd(ChargeId)
return
@ -166,6 +174,10 @@ func (c *ChargeMod) FireDiamondShop(ChargeId int) []*item.Item {
return chargeCfg.GetDiamondShopReward(ChargeId)
}
func (c *ChargeMod) FirePetCoinShop(ChargeId int) []*item.Item {
return chargeCfg.GetPetCoinShopReward(ChargeId)
}
// 能量商店
func (c *ChargeMod) FireEnergyShop(ChargeId int) []*item.Item {
id := chargeCfg.GetEnergyShopId(ChargeId)
@ -244,14 +256,16 @@ func (c *ChargeMod) BackData() *msg.ResCharge {
}
return &msg.ResCharge{
Charge: float32(c.Charge),
Total: int32(c.Total),
First: GoUtil.MapIntToSlice(c.EnergyShop),
SpecialShop: SpecialShop,
FreeShop: int32(c.FreeShop),
ChessShop: ChessShop,
Gift: GoUtil.MapIntToInt32(c.Gift),
Ad: c.Ad,
Charge: float32(c.Charge),
Total: int32(c.Total),
First: GoUtil.MapIntToSlice(c.EnergyShop),
SpecialShop: SpecialShop,
FreeShop: int32(c.FreeShop),
ChessShop: ChessShop,
Gift: GoUtil.MapIntToInt32(c.Gift),
Ad: c.Ad,
SpecialCharge: float32(c.SpecialCharge),
SpecialChargeWeek: int32(GoUtil.FullWeeksSince(c.LastSpecialCharge)),
Wish: &msg.WishList{
Id: int32(c.WishList.ItemId),
Count: int32(c.WishList.Count),

View File

@ -497,6 +497,7 @@ const (
ORDER_TYPE_Clean_type2 ORDER_TYPE = 8 // 棋盘空格不足清理棋子的订单
ORDER_TYPE_COMFORT_TYPE ORDER_TYPE = 9 // 安慰订单
ORDER_TYPE_Guide_type ORDER_TYPE = 10 // 引导订单
ORDER_TYPE_Pet_type ORDER_TYPE = 11 // 宠物订单
)
// Enum value maps for ORDER_TYPE.
@ -513,6 +514,7 @@ var (
8: "Clean_type2",
9: "COMFORT_TYPE",
10: "Guide_type",
11: "Pet_type",
}
ORDER_TYPE_value = map[string]int32{
"ORDER_TYPE_DEFAULT": 0,
@ -526,6 +528,7 @@ var (
"Clean_type2": 8,
"COMFORT_TYPE": 9,
"Guide_type": 10,
"Pet_type": 11,
}
)
@ -2276,7 +2279,7 @@ type ResPlayerAsset struct {
Exp int32 `protobuf:"varint,7,opt,name=exp,proto3" json:"exp,omitempty"`
Login int32 `protobuf:"varint,8,opt,name=Login,proto3" json:"Login,omitempty"`
Logout int32 `protobuf:"varint,9,opt,name=Logout,proto3" json:"Logout,omitempty"`
PExp int32 `protobuf:"varint,10,opt,name=pExp,proto3" json:"pExp,omitempty"` // 玩家经验
PExp int32 `protobuf:"varint,10,opt,name=PExp,proto3" json:"PExp,omitempty"` // 玩家经验
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
@ -5919,6 +5922,7 @@ type Order struct {
Id int32 `protobuf:"varint,1,opt,name=Id,proto3" json:"Id,omitempty"`
ChessId []int32 `protobuf:"varint,2,rep,packed,name=ChessId,proto3" json:"ChessId,omitempty"`
Type int32 `protobuf:"varint,3,opt,name=type,proto3" json:"type,omitempty"`
Items []*ItemInfo `protobuf:"bytes,4,rep,name=Items,proto3" json:"Items,omitempty"` // 奖励
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
@ -5974,6 +5978,13 @@ func (x *Order) GetType() int32 {
return 0
}
func (x *Order) GetItems() []*ItemInfo {
if x != nil {
return x.Items
}
return nil
}
type ResOrderList struct {
state protoimpl.MessageState `protogen:"open.v1"`
OrderList []*Order `protobuf:"bytes,1,rep,name=OrderList,proto3" json:"OrderList,omitempty"`
@ -14432,18 +14443,20 @@ func (x *ResDeleteMail) GetId() int32 {
}
type ResCharge struct {
state protoimpl.MessageState `protogen:"open.v1"`
Charge float32 `protobuf:"fixed32,1,opt,name=Charge,proto3" json:"Charge,omitempty"` // 总充值金额
Total int32 `protobuf:"varint,2,opt,name=Total,proto3" json:"Total,omitempty"` // 总充值次数
First []int32 `protobuf:"varint,3,rep,packed,name=First,proto3" json:"First,omitempty"` //已首充档次
SpecialShop map[int32]*ResSpecialShop `protobuf:"bytes,4,rep,name=SpecialShop,proto3" json:"SpecialShop,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` // 特惠礼包
FreeShop int32 `protobuf:"varint,5,opt,name=FreeShop,proto3" json:"FreeShop,omitempty"` // 已领取免费礼包档次
ChessShop map[int32]*ResChessShop `protobuf:"bytes,6,rep,name=ChessShop,proto3" json:"ChessShop,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` // 棋子商店
Gift map[int32]int32 `protobuf:"bytes,7,rep,name=Gift,proto3" json:"Gift,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"varint,2,opt,name=value"` // 礼包 礼包id =》 礼包数量
Ad bool `protobuf:"varint,8,opt,name=Ad,proto3" json:"Ad,omitempty"` // 是否有广告礼包
Wish *WishList `protobuf:"bytes,9,opt,name=Wish,proto3" json:"Wish,omitempty"` // 心愿单
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
state protoimpl.MessageState `protogen:"open.v1"`
Charge float32 `protobuf:"fixed32,1,opt,name=Charge,proto3" json:"Charge,omitempty"` // 总充值金额
Total int32 `protobuf:"varint,2,opt,name=Total,proto3" json:"Total,omitempty"` // 总充值次数
First []int32 `protobuf:"varint,3,rep,packed,name=First,proto3" json:"First,omitempty"` //已首充档次
SpecialShop map[int32]*ResSpecialShop `protobuf:"bytes,4,rep,name=SpecialShop,proto3" json:"SpecialShop,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` // 特惠礼包
FreeShop int32 `protobuf:"varint,5,opt,name=FreeShop,proto3" json:"FreeShop,omitempty"` // 已领取免费礼包档次
ChessShop map[int32]*ResChessShop `protobuf:"bytes,6,rep,name=ChessShop,proto3" json:"ChessShop,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` // 棋子商店
Gift map[int32]int32 `protobuf:"bytes,7,rep,name=Gift,proto3" json:"Gift,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"varint,2,opt,name=value"` // 礼包 礼包id =》 礼包数量
Ad bool `protobuf:"varint,8,opt,name=Ad,proto3" json:"Ad,omitempty"` // 是否有广告礼包
Wish *WishList `protobuf:"bytes,9,opt,name=Wish,proto3" json:"Wish,omitempty"` // 心愿单
SpecialCharge float32 `protobuf:"fixed32,10,opt,name=SpecialCharge,proto3" json:"SpecialCharge,omitempty"` // 特35天最大充值金额
SpecialChargeWeek int32 `protobuf:"varint,11,opt,name=SpecialChargeWeek,proto3" json:"SpecialChargeWeek,omitempty"` // 距离现在多少周
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *ResCharge) Reset() {
@ -14539,6 +14552,20 @@ func (x *ResCharge) GetWish() *WishList {
return nil
}
func (x *ResCharge) GetSpecialCharge() float32 {
if x != nil {
return x.SpecialCharge
}
return 0
}
func (x *ResCharge) GetSpecialChargeWeek() int32 {
if x != nil {
return x.SpecialChargeWeek
}
return 0
}
type WishList struct {
state protoimpl.MessageState `protogen:"open.v1"`
Id int32 `protobuf:"varint,1,opt,name=Id,proto3" json:"Id,omitempty"` // 物品id
@ -22991,8 +23018,8 @@ const file_proto_Gameapi_proto_rawDesc = "" +
"\x03exp\x18\a \x01(\x05R\x03exp\x12\x14\n" +
"\x05Login\x18\b \x01(\x05R\x05Login\x12\x16\n" +
"\x06Logout\x18\t \x01(\x05R\x06Logout\x12\x12\n" +
"\x04pExp\x18\n" +
" \x01(\x05R\x04pExp\"\xbb\x01\n" +
"\x04PExp\x18\n" +
" \x01(\x05R\x04PExp\"\xbb\x01\n" +
"\x12UpdateBaseItemInfo\x12\x14\n" +
"\x05dwUin\x18\x01 \x01(\x03R\x05dwUin\x12O\n" +
"\vmUpdateItem\x18\x02 \x03(\v2-.tutorial.UpdateBaseItemInfo.MUpdateItemEntryR\vmUpdateItem\x1a>\n" +
@ -23308,11 +23335,12 @@ const file_proto_Gameapi_proto_rawDesc = "" +
"\x0fReqSellChessNum\x12\x18\n" +
"\aChessId\x18\x01 \x01(\x05R\aChessId\"#\n" +
"\x0fResSellChessNum\x12\x10\n" +
"\x03Num\x18\x01 \x01(\x05R\x03Num\"E\n" +
"\x03Num\x18\x01 \x01(\x05R\x03Num\"o\n" +
"\x05Order\x12\x0e\n" +
"\x02Id\x18\x01 \x01(\x05R\x02Id\x12\x18\n" +
"\aChessId\x18\x02 \x03(\x05R\aChessId\x12\x12\n" +
"\x04type\x18\x03 \x01(\x05R\x04type\"=\n" +
"\x04type\x18\x03 \x01(\x05R\x04type\x12(\n" +
"\x05Items\x18\x04 \x03(\v2\x12.tutorial.ItemInfoR\x05Items\"=\n" +
"\fResOrderList\x12-\n" +
"\tOrderList\x18\x01 \x03(\v2\x0f.tutorial.OrderR\tOrderList\"K\n" +
"\x0fResDecorateInfo\x12\x16\n" +
@ -23885,7 +23913,7 @@ const file_proto_Gameapi_proto_rawDesc = "" +
"\rResDeleteMail\x12&\n" +
"\x04Code\x18\x01 \x01(\x0e2\x12.tutorial.RES_CODER\x04Code\x12\x10\n" +
"\x03Msg\x18\x02 \x01(\tR\x03Msg\x12\x0e\n" +
"\x02Id\x18\x03 \x01(\x05R\x02Id\"\xc9\x04\n" +
"\x02Id\x18\x03 \x01(\x05R\x02Id\"\x9d\x05\n" +
"\tResCharge\x12\x16\n" +
"\x06Charge\x18\x01 \x01(\x02R\x06Charge\x12\x14\n" +
"\x05Total\x18\x02 \x01(\x05R\x05Total\x12\x14\n" +
@ -23895,7 +23923,10 @@ const file_proto_Gameapi_proto_rawDesc = "" +
"\tChessShop\x18\x06 \x03(\v2\".tutorial.ResCharge.ChessShopEntryR\tChessShop\x121\n" +
"\x04Gift\x18\a \x03(\v2\x1d.tutorial.ResCharge.GiftEntryR\x04Gift\x12\x0e\n" +
"\x02Ad\x18\b \x01(\bR\x02Ad\x12&\n" +
"\x04Wish\x18\t \x01(\v2\x12.tutorial.WishListR\x04Wish\x1aX\n" +
"\x04Wish\x18\t \x01(\v2\x12.tutorial.WishListR\x04Wish\x12$\n" +
"\rSpecialCharge\x18\n" +
" \x01(\x02R\rSpecialCharge\x12,\n" +
"\x11SpecialChargeWeek\x18\v \x01(\x05R\x11SpecialChargeWeek\x1aX\n" +
"\x10SpecialShopEntry\x12\x10\n" +
"\x03key\x18\x01 \x01(\x05R\x03key\x12.\n" +
"\x05value\x18\x02 \x01(\v2\x18.tutorial.ResSpecialShopR\x05value:\x028\x01\x1aT\n" +
@ -24619,7 +24650,7 @@ const file_proto_Gameapi_proto_rawDesc = "" +
"\x14ACT_TYPE_GUESS_COLOR\x10\x02\x12\x11\n" +
"\rACT_TYPE_RACE\x10\x03\x12\x1a\n" +
"\x16ACT_TYPE_DISCOUNT_GIFT\x10\x04\x12\x15\n" +
"\x11ACT_TYPE_ADD_GIFT\x10\x05*\xd2\x01\n" +
"\x11ACT_TYPE_ADD_GIFT\x10\x05*\xe0\x01\n" +
"\n" +
"ORDER_TYPE\x12\x16\n" +
"\x12ORDER_TYPE_DEFAULT\x10\x00\x12\x0f\n" +
@ -24637,7 +24668,8 @@ const file_proto_Gameapi_proto_rawDesc = "" +
"\fCOMFORT_TYPE\x10\t\x12\x0e\n" +
"\n" +
"Guide_type\x10\n" +
"*\x84\x05\n" +
"\x12\f\n" +
"\bPet_type\x10\v*\x84\x05\n" +
"\x0eTIME_LINE_TYPE\x12\v\n" +
"\aDEFAULT\x10\x00\x12\x19\n" +
"\x15LOG_TYPE_FRIEND_APPLY\x10\x01\x12\x1a\n" +
@ -25218,212 +25250,213 @@ var file_proto_Gameapi_proto_depIdxs = []int32{
429, // 42: tutorial.ReqRewardOrder.mChessData:type_name -> tutorial.ReqRewardOrder.MChessDataEntry
2, // 43: tutorial.ResRewardOrder.Code:type_name -> tutorial.RES_CODE
2, // 44: tutorial.ResDelOrder.Code:type_name -> tutorial.RES_CODE
99, // 45: tutorial.ResOrderList.OrderList:type_name -> tutorial.Order
2, // 46: tutorial.ResDecorate.Code:type_name -> tutorial.RES_CODE
2, // 47: tutorial.ResDecorateAll.Code:type_name -> tutorial.RES_CODE
107, // 48: tutorial.ResCardInfo.CardList:type_name -> tutorial.Card
430, // 49: tutorial.ResCardInfo.AllCard:type_name -> tutorial.ResCardInfo.AllCardEntry
431, // 50: tutorial.ResCardInfo.Handbook:type_name -> tutorial.ResCardInfo.HandbookEntry
2, // 51: tutorial.ResCardSeasonFirstReward.Code:type_name -> tutorial.RES_CODE
2, // 52: tutorial.ResCardHandbookReward.Code:type_name -> tutorial.RES_CODE
2, // 53: tutorial.ResMasterCard.Code:type_name -> tutorial.RES_CODE
2, // 54: tutorial.ResCardCollectReward.Code:type_name -> tutorial.RES_CODE
2, // 55: tutorial.ResExStarReward.Code:type_name -> tutorial.RES_CODE
2, // 56: tutorial.ResAllCollectReward.Code:type_name -> tutorial.RES_CODE
2, // 57: tutorial.ResCardGive.Code:type_name -> tutorial.RES_CODE
2, // 58: tutorial.ResAgreeCardGive.Code:type_name -> tutorial.RES_CODE
2, // 59: tutorial.ResRefuseCardGive.Code:type_name -> tutorial.RES_CODE
2, // 60: tutorial.ResCardSend.Code:type_name -> tutorial.RES_CODE
2, // 61: tutorial.ResCardExchange.Code:type_name -> tutorial.RES_CODE
2, // 62: tutorial.ResSelectCardExchange.Code:type_name -> tutorial.RES_CODE
2, // 63: tutorial.ResAgreeCardExchange.Code:type_name -> tutorial.RES_CODE
2, // 64: tutorial.ResRefuseCardSelect.Code:type_name -> tutorial.RES_CODE
2, // 65: tutorial.ResRefuseCardExchange.Code:type_name -> tutorial.RES_CODE
2, // 66: tutorial.ResGetFriendCard.Code:type_name -> tutorial.RES_CODE
2, // 67: tutorial.ResGuideReward.Code:type_name -> tutorial.RES_CODE
2, // 68: tutorial.ResGuidePlayroom.Code:type_name -> tutorial.RES_CODE
432, // 69: tutorial.ResGuildInfo.Reward:type_name -> tutorial.ResGuildInfo.RewardEntry
433, // 70: tutorial.ResGuideInfo.Reward:type_name -> tutorial.ResGuideInfo.RewardEntry
152, // 71: tutorial.ResItemPop.Items:type_name -> tutorial.ItemInfo
153, // 72: tutorial.ResItemPop.CardPacks:type_name -> tutorial.CardPack
434, // 73: tutorial.ResDailyTask.WeekReward:type_name -> tutorial.ResDailyTask.WeekRewardEntry
435, // 74: tutorial.ResDailyTask.DailyTask:type_name -> tutorial.ResDailyTask.DailyTaskEntry
152, // 75: tutorial.DailyWeek.Items:type_name -> tutorial.ItemInfo
157, // 76: tutorial.DailyTask.Progress:type_name -> tutorial.QuestProgress
152, // 77: tutorial.DailyTask.Items:type_name -> tutorial.ItemInfo
2, // 78: tutorial.ResGetDailyTaskReward.Code:type_name -> tutorial.RES_CODE
2, // 79: tutorial.ResGetDailyWeekReward.Code:type_name -> tutorial.RES_CODE
2, // 80: tutorial.ResDailyUnlock.Code:type_name -> tutorial.RES_CODE
165, // 81: tutorial.ResFaceInfo.FaceList:type_name -> tutorial.FaceInfo
2, // 82: tutorial.ResSetFace.Code:type_name -> tutorial.RES_CODE
169, // 83: tutorial.ResAvatarInfo.AvatarList:type_name -> tutorial.AvatarInfo
2, // 84: tutorial.ResSetAvatar.Code:type_name -> tutorial.RES_CODE
2, // 85: tutorial.ResSetEmoji.Code:type_name -> tutorial.RES_CODE
176, // 86: tutorial.ResSevenLogin.WeekReward:type_name -> tutorial.SevenLoginReward
176, // 87: tutorial.ResSevenLogin.MonthReward:type_name -> tutorial.SevenLoginReward
152, // 88: tutorial.SevenLoginReward.Item1:type_name -> tutorial.ItemInfo
152, // 89: tutorial.SevenLoginReward.Item2:type_name -> tutorial.ItemInfo
152, // 90: tutorial.SevenLoginReward.Item3:type_name -> tutorial.ItemInfo
2, // 91: tutorial.ResGetSevenLoginReward.Code:type_name -> tutorial.RES_CODE
2, // 92: tutorial.ResGetMonthLoginReward.Code:type_name -> tutorial.RES_CODE
182, // 93: tutorial.ResActivity.ActiveList:type_name -> tutorial.ActivityInfo
2, // 94: tutorial.ResActivityReward.Code:type_name -> tutorial.RES_CODE
436, // 95: tutorial.ResLimitEvent.LimitEventList:type_name -> tutorial.ResLimitEvent.LimitEventListEntry
437, // 96: tutorial.ResLimitEventProgress.ProgressReward:type_name -> tutorial.ResLimitEventProgress.ProgressRewardEntry
2, // 97: tutorial.ResLimitEventReward.Code:type_name -> tutorial.RES_CODE
2, // 98: tutorial.ResSelectLimitEvent.Code:type_name -> tutorial.RES_CODE
438, // 99: tutorial.LimitEvent.Param:type_name -> tutorial.LimitEvent.ParamEntry
439, // 100: tutorial.ReqLimitEventLuckyCat.mChessData:type_name -> tutorial.ReqLimitEventLuckyCat.MChessDataEntry
2, // 101: tutorial.ResLimitEventLuckyCat.Code:type_name -> tutorial.RES_CODE
2, // 102: tutorial.ResLimitSenceReward.Code:type_name -> tutorial.RES_CODE
152, // 103: tutorial.ResChessRainReward.Items:type_name -> tutorial.ItemInfo
2, // 104: tutorial.ResFastProduceReward.Code:type_name -> tutorial.RES_CODE
2, // 105: tutorial.ResCatTrickReward.Code:type_name -> tutorial.RES_CODE
207, // 106: tutorial.ResSearchPlayer.List:type_name -> tutorial.ResPlayerSimple
440, // 107: tutorial.ResPlayerSimple.Emoji:type_name -> tutorial.ResPlayerSimple.EmojiEntry
207, // 108: tutorial.ResFriendLog.Player:type_name -> tutorial.ResPlayerSimple
209, // 109: tutorial.NotifyFriendLog.info:type_name -> tutorial.ResFriendLog
212, // 110: tutorial.NotifyFriendCard.Info:type_name -> tutorial.ResFriendCard
441, // 111: tutorial.ResKv.kv:type_name -> tutorial.ResKv.KvEntry
207, // 112: tutorial.ResFriendRecommend.List:type_name -> tutorial.ResPlayerSimple
2, // 113: tutorial.ResFriendIgnore.Code:type_name -> tutorial.RES_CODE
207, // 114: tutorial.ResFriendList.FriendList:type_name -> tutorial.ResPlayerSimple
2, // 115: tutorial.ResAddNpc.Code:type_name -> tutorial.RES_CODE
225, // 116: tutorial.ResFriendApply.ApplyList:type_name -> tutorial.ResFriendApplyInfo
207, // 117: tutorial.ResFriendApplyInfo.Player:type_name -> tutorial.ResPlayerSimple
212, // 118: tutorial.ResFriendCardMsg.MsgList:type_name -> tutorial.ResFriendCard
225, // 119: tutorial.ResWishApplyList.ApplyList:type_name -> tutorial.ResFriendApplyInfo
2, // 120: tutorial.ResWishApply.Code:type_name -> tutorial.RES_CODE
209, // 121: tutorial.ResFriendTimeLine.Log:type_name -> tutorial.ResFriendLog
2, // 122: tutorial.ResFriendTLUpvote.Code:type_name -> tutorial.RES_CODE
207, // 123: tutorial.ResFriendApplyNotify.Player:type_name -> tutorial.ResPlayerSimple
2, // 124: tutorial.ResApplyFriend.Code:type_name -> tutorial.RES_CODE
2, // 125: tutorial.ResAgreeFriend.Code:type_name -> tutorial.RES_CODE
207, // 126: tutorial.ResAgreeFriend.Player:type_name -> tutorial.ResPlayerSimple
2, // 127: tutorial.ResRefuseFriend.Code:type_name -> tutorial.RES_CODE
2, // 128: tutorial.ResDelFriend.Code:type_name -> tutorial.RES_CODE
442, // 129: tutorial.ResRank.RankList:type_name -> tutorial.ResRank.RankListEntry
443, // 130: tutorial.ResMailList.MailList:type_name -> tutorial.ResMailList.MailListEntry
152, // 131: tutorial.MailInfo.Items:type_name -> tutorial.ItemInfo
249, // 132: tutorial.MailNotify.Info:type_name -> tutorial.MailInfo
2, // 133: tutorial.ResReadMail.Code:type_name -> tutorial.RES_CODE
2, // 134: tutorial.ResGetMailReward.Code:type_name -> tutorial.RES_CODE
2, // 135: tutorial.ResDeleteMail.Code:type_name -> tutorial.RES_CODE
444, // 136: tutorial.ResCharge.SpecialShop:type_name -> tutorial.ResCharge.SpecialShopEntry
445, // 137: tutorial.ResCharge.ChessShop:type_name -> tutorial.ResCharge.ChessShopEntry
446, // 138: tutorial.ResCharge.Gift:type_name -> tutorial.ResCharge.GiftEntry
258, // 139: tutorial.ResCharge.Wish:type_name -> tutorial.WishList
2, // 140: tutorial.ResAddWish.Code:type_name -> tutorial.RES_CODE
2, // 141: tutorial.ResGetWish.Code:type_name -> tutorial.RES_CODE
2, // 142: tutorial.ResSendWishBeg.Code:type_name -> tutorial.RES_CODE
2, // 143: tutorial.ResFreeShop.Code:type_name -> tutorial.RES_CODE
2, // 144: tutorial.ResBuyChessShop.Code:type_name -> tutorial.RES_CODE
447, // 145: tutorial.ReqBuyChessShop2.mChessData:type_name -> tutorial.ReqBuyChessShop2.MChessDataEntry
2, // 146: tutorial.ResBuyChessShop2.Code:type_name -> tutorial.RES_CODE
2, // 147: tutorial.ResRefreshChessShop.Code:type_name -> tutorial.RES_CODE
448, // 148: tutorial.ResEndless.EndlessList:type_name -> tutorial.ResEndless.EndlessListEntry
152, // 149: tutorial.ResEndlessInfo.Items:type_name -> tutorial.ItemInfo
2, // 150: tutorial.ResEndlessReward.Code:type_name -> tutorial.RES_CODE
2, // 151: tutorial.ResPiggyBankReward.Code:type_name -> tutorial.RES_CODE
2, // 152: tutorial.ResChargeReceive.Code:type_name -> tutorial.RES_CODE
2, // 153: tutorial.ResShippingOrder.Code:type_name -> tutorial.RES_CODE
2, // 154: tutorial.ResChampshipReward.Code:type_name -> tutorial.RES_CODE
2, // 155: tutorial.ResChampshipRankReward.Code:type_name -> tutorial.RES_CODE
449, // 156: tutorial.ResChampshipRank.RankList:type_name -> tutorial.ResChampshipRank.RankListEntry
450, // 157: tutorial.ResChampshipPreRank.RankList:type_name -> tutorial.ResChampshipPreRank.RankListEntry
451, // 158: tutorial.ResNotifyCard.Card:type_name -> tutorial.ResNotifyCard.CardEntry
452, // 159: tutorial.ResNotifyCard.Master:type_name -> tutorial.ResNotifyCard.MasterEntry
453, // 160: tutorial.ResNotifyCard.Handbook:type_name -> tutorial.ResNotifyCard.HandbookEntry
2, // 161: tutorial.ResSetFacebookUrl.Code:type_name -> tutorial.RES_CODE
454, // 162: tutorial.ResMining.Map:type_name -> tutorial.ResMining.MapEntry
455, // 163: tutorial.ReqMiningTake.Map:type_name -> tutorial.ReqMiningTake.MapEntry
2, // 164: tutorial.ResMiningTake.Code:type_name -> tutorial.RES_CODE
2, // 165: tutorial.ResMiningReward.Code:type_name -> tutorial.RES_CODE
456, // 166: tutorial.ResActRed.Red:type_name -> tutorial.ResActRed.RedEntry
182, // 167: tutorial.ActivityNotify.Info:type_name -> tutorial.ActivityInfo
457, // 168: tutorial.ResItem.Item:type_name -> tutorial.ResItem.ItemEntry
458, // 169: tutorial.ItemNotify.Item:type_name -> tutorial.ItemNotify.ItemEntry
328, // 170: tutorial.ResGuessColor.MapList:type_name -> tutorial.GuessColorInfo
459, // 171: tutorial.ResGuessColor.OMap:type_name -> tutorial.ResGuessColor.OMapEntry
326, // 172: tutorial.ResGuessColor.Opponent:type_name -> tutorial.opponent
328, // 173: tutorial.ReqGuessColorTake.Map:type_name -> tutorial.GuessColorInfo
460, // 174: tutorial.ReqGuessColorTake.OMap:type_name -> tutorial.ReqGuessColorTake.OMapEntry
461, // 175: tutorial.GuessColorInfo.Map:type_name -> tutorial.GuessColorInfo.MapEntry
2, // 176: tutorial.ResGuessColorTake.Code:type_name -> tutorial.RES_CODE
2, // 177: tutorial.ResGuessColorReward.Code:type_name -> tutorial.RES_CODE
334, // 178: tutorial.ResRace.Opponent:type_name -> tutorial.raceopponent
2, // 179: tutorial.ResRaceStart.Code:type_name -> tutorial.RES_CODE
2, // 180: tutorial.ResRaceReward.Code:type_name -> tutorial.RES_CODE
152, // 181: tutorial.ResPlayroom.Items:type_name -> tutorial.ItemInfo
364, // 182: tutorial.ResPlayroom.Opponent:type_name -> tutorial.RoomOpponent
363, // 183: tutorial.ResPlayroom.Friend:type_name -> tutorial.FriendRoom
462, // 184: tutorial.ResPlayroom.Playroom:type_name -> tutorial.ResPlayroom.PlayroomEntry
463, // 185: tutorial.ResPlayroom.Mood:type_name -> tutorial.ResPlayroom.MoodEntry
152, // 186: tutorial.ResPlayroom.LoseItem:type_name -> tutorial.ItemInfo
360, // 187: tutorial.ResPlayroom.Chip:type_name -> tutorial.ChipInfo
464, // 188: tutorial.ResPlayroom.Physiology:type_name -> tutorial.ResPlayroom.PhysiologyEntry
465, // 189: tutorial.ResPlayroom.Dress:type_name -> tutorial.ResPlayroom.DressEntry
466, // 190: tutorial.ResPlayroom.DressSet:type_name -> tutorial.ResPlayroom.DressSetEntry
156, // 191: tutorial.ResPlayroom.DailyTask:type_name -> tutorial.DailyTask
156, // 192: tutorial.NotifyPlayroomTask.DailyTask:type_name -> tutorial.DailyTask
2, // 193: tutorial.ResPlayroomTask.Code:type_name -> tutorial.RES_CODE
2, // 194: tutorial.ResPlayroomTaskReward.Code:type_name -> tutorial.RES_CODE
2, // 195: tutorial.ResPlayroomUnlock.Code:type_name -> tutorial.RES_CODE
2, // 196: tutorial.ResPlayroomUpvote.Code:type_name -> tutorial.RES_CODE
467, // 197: tutorial.ReqPlayroomDressSet.DressSet:type_name -> tutorial.ReqPlayroomDressSet.DressSetEntry
2, // 198: tutorial.ResPlayroomDressSet.Code:type_name -> tutorial.RES_CODE
2, // 199: tutorial.ResPlayroomPetAirSet.Code:type_name -> tutorial.RES_CODE
2, // 200: tutorial.ResPlayroomWrokOutline.Code:type_name -> tutorial.RES_CODE
152, // 201: tutorial.NotifyPlayroomLose.LoseItem:type_name -> tutorial.ItemInfo
360, // 202: tutorial.NotifyPlayroomLose.Chip:type_name -> tutorial.ChipInfo
468, // 203: tutorial.NotifyPlayroomMood.Mood:type_name -> tutorial.NotifyPlayroomMood.MoodEntry
469, // 204: tutorial.NotifyPlayroomMood.Physiology:type_name -> tutorial.NotifyPlayroomMood.PhysiologyEntry
470, // 205: tutorial.ResPlayroomInfo.Playroom:type_name -> tutorial.ResPlayroomInfo.PlayroomEntry
471, // 206: tutorial.ResPlayroomInfo.Items:type_name -> tutorial.ResPlayroomInfo.ItemsEntry
472, // 207: tutorial.ResPlayroomInfo.flip:type_name -> tutorial.ResPlayroomInfo.FlipEntry
473, // 208: tutorial.ResPlayroomInfo.Emoji:type_name -> tutorial.ResPlayroomInfo.EmojiEntry
474, // 209: tutorial.ResPlayroomInfo.DressSet:type_name -> tutorial.ResPlayroomInfo.DressSetEntry
2, // 210: tutorial.ResPlayroomFlip.Code:type_name -> tutorial.RES_CODE
2, // 211: tutorial.ResPlayroomFlipReward.Code:type_name -> tutorial.RES_CODE
2, // 212: tutorial.ResPlayroomGame.Code:type_name -> tutorial.RES_CODE
475, // 213: tutorial.ResPlayroomGame.Items:type_name -> tutorial.ResPlayroomGame.ItemsEntry
2, // 214: tutorial.ResPlayroomInteract.Code:type_name -> tutorial.RES_CODE
476, // 215: tutorial.ReqPlayroomSetRoom.Playroom:type_name -> tutorial.ReqPlayroomSetRoom.PlayroomEntry
2, // 216: tutorial.ResPlayroomSetRoom.Code:type_name -> tutorial.RES_CODE
2, // 217: tutorial.ResPlayroomSelectReward.Code:type_name -> tutorial.RES_CODE
2, // 218: tutorial.ResPlayroomLose.Code:type_name -> tutorial.RES_CODE
2, // 219: tutorial.ResPlayroomWork.Code:type_name -> tutorial.RES_CODE
2, // 220: tutorial.ResPlayroomRest.Code:type_name -> tutorial.RES_CODE
2, // 221: tutorial.ResPlayroomDraw.Code:type_name -> tutorial.RES_CODE
2, // 222: tutorial.ResPlayroomChip.Code:type_name -> tutorial.RES_CODE
2, // 223: tutorial.ResPlayroomBuyItem.Code:type_name -> tutorial.RES_CODE
2, // 224: tutorial.ResPlayroomShop.Code:type_name -> tutorial.RES_CODE
395, // 225: tutorial.ResFriendTreasure.List:type_name -> tutorial.TreasureInfo
395, // 226: tutorial.ReqFriendTreasureStart.List:type_name -> tutorial.TreasureInfo
2, // 227: tutorial.ResFriendTreasureStart.Code:type_name -> tutorial.RES_CODE
2, // 228: tutorial.ResFriendTreasureEnd.Code:type_name -> tutorial.RES_CODE
2, // 229: tutorial.ResFriendTreasureFilp.Code:type_name -> tutorial.RES_CODE
406, // 230: tutorial.ResCollectInfo.Items:type_name -> tutorial.CollectItem
152, // 231: tutorial.CollectItem.Items:type_name -> tutorial.ItemInfo
2, // 232: tutorial.ResCollect.Code:type_name -> tutorial.RES_CODE
155, // 233: tutorial.ResDailyTask.WeekRewardEntry.value:type_name -> tutorial.DailyWeek
156, // 234: tutorial.ResDailyTask.DailyTaskEntry.value:type_name -> tutorial.DailyTask
192, // 235: tutorial.ResLimitEvent.LimitEventListEntry.value:type_name -> tutorial.LimitEvent
207, // 236: tutorial.ResRank.RankListEntry.value:type_name -> tutorial.ResPlayerSimple
249, // 237: tutorial.ResMailList.MailListEntry.value:type_name -> tutorial.MailInfo
265, // 238: tutorial.ResCharge.SpecialShopEntry.value:type_name -> tutorial.ResSpecialShop
266, // 239: tutorial.ResCharge.ChessShopEntry.value:type_name -> tutorial.ResChessShop
277, // 240: tutorial.ResEndless.EndlessListEntry.value:type_name -> tutorial.ResEndlessInfo
208, // 241: tutorial.ResChampshipRank.RankListEntry.value:type_name -> tutorial.ResPlayerRank
208, // 242: tutorial.ResChampshipPreRank.RankListEntry.value:type_name -> tutorial.ResPlayerRank
350, // 243: tutorial.ResPlayroom.DressEntry.value:type_name -> tutorial.PlayroomDress
152, // 244: tutorial.ResPlayroomInfo.ItemsEntry.value:type_name -> tutorial.ItemInfo
152, // 245: tutorial.ResPlayroomGame.ItemsEntry.value:type_name -> tutorial.ItemInfo
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
152, // 45: tutorial.Order.Items:type_name -> tutorial.ItemInfo
99, // 46: tutorial.ResOrderList.OrderList:type_name -> tutorial.Order
2, // 47: tutorial.ResDecorate.Code:type_name -> tutorial.RES_CODE
2, // 48: tutorial.ResDecorateAll.Code:type_name -> tutorial.RES_CODE
107, // 49: tutorial.ResCardInfo.CardList:type_name -> tutorial.Card
430, // 50: tutorial.ResCardInfo.AllCard:type_name -> tutorial.ResCardInfo.AllCardEntry
431, // 51: tutorial.ResCardInfo.Handbook:type_name -> tutorial.ResCardInfo.HandbookEntry
2, // 52: tutorial.ResCardSeasonFirstReward.Code:type_name -> tutorial.RES_CODE
2, // 53: tutorial.ResCardHandbookReward.Code:type_name -> tutorial.RES_CODE
2, // 54: tutorial.ResMasterCard.Code:type_name -> tutorial.RES_CODE
2, // 55: tutorial.ResCardCollectReward.Code:type_name -> tutorial.RES_CODE
2, // 56: tutorial.ResExStarReward.Code:type_name -> tutorial.RES_CODE
2, // 57: tutorial.ResAllCollectReward.Code:type_name -> tutorial.RES_CODE
2, // 58: tutorial.ResCardGive.Code:type_name -> tutorial.RES_CODE
2, // 59: tutorial.ResAgreeCardGive.Code:type_name -> tutorial.RES_CODE
2, // 60: tutorial.ResRefuseCardGive.Code:type_name -> tutorial.RES_CODE
2, // 61: tutorial.ResCardSend.Code:type_name -> tutorial.RES_CODE
2, // 62: tutorial.ResCardExchange.Code:type_name -> tutorial.RES_CODE
2, // 63: tutorial.ResSelectCardExchange.Code:type_name -> tutorial.RES_CODE
2, // 64: tutorial.ResAgreeCardExchange.Code:type_name -> tutorial.RES_CODE
2, // 65: tutorial.ResRefuseCardSelect.Code:type_name -> tutorial.RES_CODE
2, // 66: tutorial.ResRefuseCardExchange.Code:type_name -> tutorial.RES_CODE
2, // 67: tutorial.ResGetFriendCard.Code:type_name -> tutorial.RES_CODE
2, // 68: tutorial.ResGuideReward.Code:type_name -> tutorial.RES_CODE
2, // 69: tutorial.ResGuidePlayroom.Code:type_name -> tutorial.RES_CODE
432, // 70: tutorial.ResGuildInfo.Reward:type_name -> tutorial.ResGuildInfo.RewardEntry
433, // 71: tutorial.ResGuideInfo.Reward:type_name -> tutorial.ResGuideInfo.RewardEntry
152, // 72: tutorial.ResItemPop.Items:type_name -> tutorial.ItemInfo
153, // 73: tutorial.ResItemPop.CardPacks:type_name -> tutorial.CardPack
434, // 74: tutorial.ResDailyTask.WeekReward:type_name -> tutorial.ResDailyTask.WeekRewardEntry
435, // 75: tutorial.ResDailyTask.DailyTask:type_name -> tutorial.ResDailyTask.DailyTaskEntry
152, // 76: tutorial.DailyWeek.Items:type_name -> tutorial.ItemInfo
157, // 77: tutorial.DailyTask.Progress:type_name -> tutorial.QuestProgress
152, // 78: tutorial.DailyTask.Items:type_name -> tutorial.ItemInfo
2, // 79: tutorial.ResGetDailyTaskReward.Code:type_name -> tutorial.RES_CODE
2, // 80: tutorial.ResGetDailyWeekReward.Code:type_name -> tutorial.RES_CODE
2, // 81: tutorial.ResDailyUnlock.Code:type_name -> tutorial.RES_CODE
165, // 82: tutorial.ResFaceInfo.FaceList:type_name -> tutorial.FaceInfo
2, // 83: tutorial.ResSetFace.Code:type_name -> tutorial.RES_CODE
169, // 84: tutorial.ResAvatarInfo.AvatarList:type_name -> tutorial.AvatarInfo
2, // 85: tutorial.ResSetAvatar.Code:type_name -> tutorial.RES_CODE
2, // 86: tutorial.ResSetEmoji.Code:type_name -> tutorial.RES_CODE
176, // 87: tutorial.ResSevenLogin.WeekReward:type_name -> tutorial.SevenLoginReward
176, // 88: tutorial.ResSevenLogin.MonthReward:type_name -> tutorial.SevenLoginReward
152, // 89: tutorial.SevenLoginReward.Item1:type_name -> tutorial.ItemInfo
152, // 90: tutorial.SevenLoginReward.Item2:type_name -> tutorial.ItemInfo
152, // 91: tutorial.SevenLoginReward.Item3:type_name -> tutorial.ItemInfo
2, // 92: tutorial.ResGetSevenLoginReward.Code:type_name -> tutorial.RES_CODE
2, // 93: tutorial.ResGetMonthLoginReward.Code:type_name -> tutorial.RES_CODE
182, // 94: tutorial.ResActivity.ActiveList:type_name -> tutorial.ActivityInfo
2, // 95: tutorial.ResActivityReward.Code:type_name -> tutorial.RES_CODE
436, // 96: tutorial.ResLimitEvent.LimitEventList:type_name -> tutorial.ResLimitEvent.LimitEventListEntry
437, // 97: tutorial.ResLimitEventProgress.ProgressReward:type_name -> tutorial.ResLimitEventProgress.ProgressRewardEntry
2, // 98: tutorial.ResLimitEventReward.Code:type_name -> tutorial.RES_CODE
2, // 99: tutorial.ResSelectLimitEvent.Code:type_name -> tutorial.RES_CODE
438, // 100: tutorial.LimitEvent.Param:type_name -> tutorial.LimitEvent.ParamEntry
439, // 101: tutorial.ReqLimitEventLuckyCat.mChessData:type_name -> tutorial.ReqLimitEventLuckyCat.MChessDataEntry
2, // 102: tutorial.ResLimitEventLuckyCat.Code:type_name -> tutorial.RES_CODE
2, // 103: tutorial.ResLimitSenceReward.Code:type_name -> tutorial.RES_CODE
152, // 104: tutorial.ResChessRainReward.Items:type_name -> tutorial.ItemInfo
2, // 105: tutorial.ResFastProduceReward.Code:type_name -> tutorial.RES_CODE
2, // 106: tutorial.ResCatTrickReward.Code:type_name -> tutorial.RES_CODE
207, // 107: tutorial.ResSearchPlayer.List:type_name -> tutorial.ResPlayerSimple
440, // 108: tutorial.ResPlayerSimple.Emoji:type_name -> tutorial.ResPlayerSimple.EmojiEntry
207, // 109: tutorial.ResFriendLog.Player:type_name -> tutorial.ResPlayerSimple
209, // 110: tutorial.NotifyFriendLog.info:type_name -> tutorial.ResFriendLog
212, // 111: tutorial.NotifyFriendCard.Info:type_name -> tutorial.ResFriendCard
441, // 112: tutorial.ResKv.kv:type_name -> tutorial.ResKv.KvEntry
207, // 113: tutorial.ResFriendRecommend.List:type_name -> tutorial.ResPlayerSimple
2, // 114: tutorial.ResFriendIgnore.Code:type_name -> tutorial.RES_CODE
207, // 115: tutorial.ResFriendList.FriendList:type_name -> tutorial.ResPlayerSimple
2, // 116: tutorial.ResAddNpc.Code:type_name -> tutorial.RES_CODE
225, // 117: tutorial.ResFriendApply.ApplyList:type_name -> tutorial.ResFriendApplyInfo
207, // 118: tutorial.ResFriendApplyInfo.Player:type_name -> tutorial.ResPlayerSimple
212, // 119: tutorial.ResFriendCardMsg.MsgList:type_name -> tutorial.ResFriendCard
225, // 120: tutorial.ResWishApplyList.ApplyList:type_name -> tutorial.ResFriendApplyInfo
2, // 121: tutorial.ResWishApply.Code:type_name -> tutorial.RES_CODE
209, // 122: tutorial.ResFriendTimeLine.Log:type_name -> tutorial.ResFriendLog
2, // 123: tutorial.ResFriendTLUpvote.Code:type_name -> tutorial.RES_CODE
207, // 124: tutorial.ResFriendApplyNotify.Player:type_name -> tutorial.ResPlayerSimple
2, // 125: tutorial.ResApplyFriend.Code:type_name -> tutorial.RES_CODE
2, // 126: tutorial.ResAgreeFriend.Code:type_name -> tutorial.RES_CODE
207, // 127: tutorial.ResAgreeFriend.Player:type_name -> tutorial.ResPlayerSimple
2, // 128: tutorial.ResRefuseFriend.Code:type_name -> tutorial.RES_CODE
2, // 129: tutorial.ResDelFriend.Code:type_name -> tutorial.RES_CODE
442, // 130: tutorial.ResRank.RankList:type_name -> tutorial.ResRank.RankListEntry
443, // 131: tutorial.ResMailList.MailList:type_name -> tutorial.ResMailList.MailListEntry
152, // 132: tutorial.MailInfo.Items:type_name -> tutorial.ItemInfo
249, // 133: tutorial.MailNotify.Info:type_name -> tutorial.MailInfo
2, // 134: tutorial.ResReadMail.Code:type_name -> tutorial.RES_CODE
2, // 135: tutorial.ResGetMailReward.Code:type_name -> tutorial.RES_CODE
2, // 136: tutorial.ResDeleteMail.Code:type_name -> tutorial.RES_CODE
444, // 137: tutorial.ResCharge.SpecialShop:type_name -> tutorial.ResCharge.SpecialShopEntry
445, // 138: tutorial.ResCharge.ChessShop:type_name -> tutorial.ResCharge.ChessShopEntry
446, // 139: tutorial.ResCharge.Gift:type_name -> tutorial.ResCharge.GiftEntry
258, // 140: tutorial.ResCharge.Wish:type_name -> tutorial.WishList
2, // 141: tutorial.ResAddWish.Code:type_name -> tutorial.RES_CODE
2, // 142: tutorial.ResGetWish.Code:type_name -> tutorial.RES_CODE
2, // 143: tutorial.ResSendWishBeg.Code:type_name -> tutorial.RES_CODE
2, // 144: tutorial.ResFreeShop.Code:type_name -> tutorial.RES_CODE
2, // 145: tutorial.ResBuyChessShop.Code:type_name -> tutorial.RES_CODE
447, // 146: tutorial.ReqBuyChessShop2.mChessData:type_name -> tutorial.ReqBuyChessShop2.MChessDataEntry
2, // 147: tutorial.ResBuyChessShop2.Code:type_name -> tutorial.RES_CODE
2, // 148: tutorial.ResRefreshChessShop.Code:type_name -> tutorial.RES_CODE
448, // 149: tutorial.ResEndless.EndlessList:type_name -> tutorial.ResEndless.EndlessListEntry
152, // 150: tutorial.ResEndlessInfo.Items:type_name -> tutorial.ItemInfo
2, // 151: tutorial.ResEndlessReward.Code:type_name -> tutorial.RES_CODE
2, // 152: tutorial.ResPiggyBankReward.Code:type_name -> tutorial.RES_CODE
2, // 153: tutorial.ResChargeReceive.Code:type_name -> tutorial.RES_CODE
2, // 154: tutorial.ResShippingOrder.Code:type_name -> tutorial.RES_CODE
2, // 155: tutorial.ResChampshipReward.Code:type_name -> tutorial.RES_CODE
2, // 156: tutorial.ResChampshipRankReward.Code:type_name -> tutorial.RES_CODE
449, // 157: tutorial.ResChampshipRank.RankList:type_name -> tutorial.ResChampshipRank.RankListEntry
450, // 158: tutorial.ResChampshipPreRank.RankList:type_name -> tutorial.ResChampshipPreRank.RankListEntry
451, // 159: tutorial.ResNotifyCard.Card:type_name -> tutorial.ResNotifyCard.CardEntry
452, // 160: tutorial.ResNotifyCard.Master:type_name -> tutorial.ResNotifyCard.MasterEntry
453, // 161: tutorial.ResNotifyCard.Handbook:type_name -> tutorial.ResNotifyCard.HandbookEntry
2, // 162: tutorial.ResSetFacebookUrl.Code:type_name -> tutorial.RES_CODE
454, // 163: tutorial.ResMining.Map:type_name -> tutorial.ResMining.MapEntry
455, // 164: tutorial.ReqMiningTake.Map:type_name -> tutorial.ReqMiningTake.MapEntry
2, // 165: tutorial.ResMiningTake.Code:type_name -> tutorial.RES_CODE
2, // 166: tutorial.ResMiningReward.Code:type_name -> tutorial.RES_CODE
456, // 167: tutorial.ResActRed.Red:type_name -> tutorial.ResActRed.RedEntry
182, // 168: tutorial.ActivityNotify.Info:type_name -> tutorial.ActivityInfo
457, // 169: tutorial.ResItem.Item:type_name -> tutorial.ResItem.ItemEntry
458, // 170: tutorial.ItemNotify.Item:type_name -> tutorial.ItemNotify.ItemEntry
328, // 171: tutorial.ResGuessColor.MapList:type_name -> tutorial.GuessColorInfo
459, // 172: tutorial.ResGuessColor.OMap:type_name -> tutorial.ResGuessColor.OMapEntry
326, // 173: tutorial.ResGuessColor.Opponent:type_name -> tutorial.opponent
328, // 174: tutorial.ReqGuessColorTake.Map:type_name -> tutorial.GuessColorInfo
460, // 175: tutorial.ReqGuessColorTake.OMap:type_name -> tutorial.ReqGuessColorTake.OMapEntry
461, // 176: tutorial.GuessColorInfo.Map:type_name -> tutorial.GuessColorInfo.MapEntry
2, // 177: tutorial.ResGuessColorTake.Code:type_name -> tutorial.RES_CODE
2, // 178: tutorial.ResGuessColorReward.Code:type_name -> tutorial.RES_CODE
334, // 179: tutorial.ResRace.Opponent:type_name -> tutorial.raceopponent
2, // 180: tutorial.ResRaceStart.Code:type_name -> tutorial.RES_CODE
2, // 181: tutorial.ResRaceReward.Code:type_name -> tutorial.RES_CODE
152, // 182: tutorial.ResPlayroom.Items:type_name -> tutorial.ItemInfo
364, // 183: tutorial.ResPlayroom.Opponent:type_name -> tutorial.RoomOpponent
363, // 184: tutorial.ResPlayroom.Friend:type_name -> tutorial.FriendRoom
462, // 185: tutorial.ResPlayroom.Playroom:type_name -> tutorial.ResPlayroom.PlayroomEntry
463, // 186: tutorial.ResPlayroom.Mood:type_name -> tutorial.ResPlayroom.MoodEntry
152, // 187: tutorial.ResPlayroom.LoseItem:type_name -> tutorial.ItemInfo
360, // 188: tutorial.ResPlayroom.Chip:type_name -> tutorial.ChipInfo
464, // 189: tutorial.ResPlayroom.Physiology:type_name -> tutorial.ResPlayroom.PhysiologyEntry
465, // 190: tutorial.ResPlayroom.Dress:type_name -> tutorial.ResPlayroom.DressEntry
466, // 191: tutorial.ResPlayroom.DressSet:type_name -> tutorial.ResPlayroom.DressSetEntry
156, // 192: tutorial.ResPlayroom.DailyTask:type_name -> tutorial.DailyTask
156, // 193: tutorial.NotifyPlayroomTask.DailyTask:type_name -> tutorial.DailyTask
2, // 194: tutorial.ResPlayroomTask.Code:type_name -> tutorial.RES_CODE
2, // 195: tutorial.ResPlayroomTaskReward.Code:type_name -> tutorial.RES_CODE
2, // 196: tutorial.ResPlayroomUnlock.Code:type_name -> tutorial.RES_CODE
2, // 197: tutorial.ResPlayroomUpvote.Code:type_name -> tutorial.RES_CODE
467, // 198: tutorial.ReqPlayroomDressSet.DressSet:type_name -> tutorial.ReqPlayroomDressSet.DressSetEntry
2, // 199: tutorial.ResPlayroomDressSet.Code:type_name -> tutorial.RES_CODE
2, // 200: tutorial.ResPlayroomPetAirSet.Code:type_name -> tutorial.RES_CODE
2, // 201: tutorial.ResPlayroomWrokOutline.Code:type_name -> tutorial.RES_CODE
152, // 202: tutorial.NotifyPlayroomLose.LoseItem:type_name -> tutorial.ItemInfo
360, // 203: tutorial.NotifyPlayroomLose.Chip:type_name -> tutorial.ChipInfo
468, // 204: tutorial.NotifyPlayroomMood.Mood:type_name -> tutorial.NotifyPlayroomMood.MoodEntry
469, // 205: tutorial.NotifyPlayroomMood.Physiology:type_name -> tutorial.NotifyPlayroomMood.PhysiologyEntry
470, // 206: tutorial.ResPlayroomInfo.Playroom:type_name -> tutorial.ResPlayroomInfo.PlayroomEntry
471, // 207: tutorial.ResPlayroomInfo.Items:type_name -> tutorial.ResPlayroomInfo.ItemsEntry
472, // 208: tutorial.ResPlayroomInfo.flip:type_name -> tutorial.ResPlayroomInfo.FlipEntry
473, // 209: tutorial.ResPlayroomInfo.Emoji:type_name -> tutorial.ResPlayroomInfo.EmojiEntry
474, // 210: tutorial.ResPlayroomInfo.DressSet:type_name -> tutorial.ResPlayroomInfo.DressSetEntry
2, // 211: tutorial.ResPlayroomFlip.Code:type_name -> tutorial.RES_CODE
2, // 212: tutorial.ResPlayroomFlipReward.Code:type_name -> tutorial.RES_CODE
2, // 213: tutorial.ResPlayroomGame.Code:type_name -> tutorial.RES_CODE
475, // 214: tutorial.ResPlayroomGame.Items:type_name -> tutorial.ResPlayroomGame.ItemsEntry
2, // 215: tutorial.ResPlayroomInteract.Code:type_name -> tutorial.RES_CODE
476, // 216: tutorial.ReqPlayroomSetRoom.Playroom:type_name -> tutorial.ReqPlayroomSetRoom.PlayroomEntry
2, // 217: tutorial.ResPlayroomSetRoom.Code:type_name -> tutorial.RES_CODE
2, // 218: tutorial.ResPlayroomSelectReward.Code:type_name -> tutorial.RES_CODE
2, // 219: tutorial.ResPlayroomLose.Code:type_name -> tutorial.RES_CODE
2, // 220: tutorial.ResPlayroomWork.Code:type_name -> tutorial.RES_CODE
2, // 221: tutorial.ResPlayroomRest.Code:type_name -> tutorial.RES_CODE
2, // 222: tutorial.ResPlayroomDraw.Code:type_name -> tutorial.RES_CODE
2, // 223: tutorial.ResPlayroomChip.Code:type_name -> tutorial.RES_CODE
2, // 224: tutorial.ResPlayroomBuyItem.Code:type_name -> tutorial.RES_CODE
2, // 225: tutorial.ResPlayroomShop.Code:type_name -> tutorial.RES_CODE
395, // 226: tutorial.ResFriendTreasure.List:type_name -> tutorial.TreasureInfo
395, // 227: tutorial.ReqFriendTreasureStart.List:type_name -> tutorial.TreasureInfo
2, // 228: tutorial.ResFriendTreasureStart.Code:type_name -> tutorial.RES_CODE
2, // 229: tutorial.ResFriendTreasureEnd.Code:type_name -> tutorial.RES_CODE
2, // 230: tutorial.ResFriendTreasureFilp.Code:type_name -> tutorial.RES_CODE
406, // 231: tutorial.ResCollectInfo.Items:type_name -> tutorial.CollectItem
152, // 232: tutorial.CollectItem.Items:type_name -> tutorial.ItemInfo
2, // 233: tutorial.ResCollect.Code:type_name -> tutorial.RES_CODE
155, // 234: tutorial.ResDailyTask.WeekRewardEntry.value:type_name -> tutorial.DailyWeek
156, // 235: tutorial.ResDailyTask.DailyTaskEntry.value:type_name -> tutorial.DailyTask
192, // 236: tutorial.ResLimitEvent.LimitEventListEntry.value:type_name -> tutorial.LimitEvent
207, // 237: tutorial.ResRank.RankListEntry.value:type_name -> tutorial.ResPlayerSimple
249, // 238: tutorial.ResMailList.MailListEntry.value:type_name -> tutorial.MailInfo
265, // 239: tutorial.ResCharge.SpecialShopEntry.value:type_name -> tutorial.ResSpecialShop
266, // 240: tutorial.ResCharge.ChessShopEntry.value:type_name -> tutorial.ResChessShop
277, // 241: tutorial.ResEndless.EndlessListEntry.value:type_name -> tutorial.ResEndlessInfo
208, // 242: tutorial.ResChampshipRank.RankListEntry.value:type_name -> tutorial.ResPlayerRank
208, // 243: tutorial.ResChampshipPreRank.RankListEntry.value:type_name -> tutorial.ResPlayerRank
350, // 244: tutorial.ResPlayroom.DressEntry.value:type_name -> tutorial.PlayroomDress
152, // 245: tutorial.ResPlayroomInfo.ItemsEntry.value:type_name -> tutorial.ItemInfo
152, // 246: tutorial.ResPlayroomGame.ItemsEntry.value:type_name -> tutorial.ItemInfo
247, // [247:247] is the sub-list for method output_type
247, // [247:247] is the sub-list for method input_type
247, // [247:247] is the sub-list for extension type_name
247, // [247:247] is the sub-list for extension extendee
0, // [0:247] is the sub-list for field type_name
}
func init() { file_proto_Gameapi_proto_init() }