This commit is contained in:
liwei1dao 2022-11-28 17:34:05 +08:00
commit 852f9056d3
24 changed files with 223 additions and 103 deletions

View File

@ -155,14 +155,22 @@
"kungfu_time": 30,
"dreamland_fightnum": 30,
"dreamland_recovery": 60,
"dreamland_cos": 1,
"dreamland_cos": {
"a": "item",
"t": "100003",
"n": 1
},
"dreamland_resettime": 0,
"dreamland_limit_time": 30,
"dreamland_share_time": 300,
"dreamland_triggernum": 20,
"hunting_num": 10,
"hunting_recovery": 60,
"hunting_cos": 1,
"hunting_cos": {
"a": "item",
"t": "100002",
"n": 1
},
"hunting_reset": 1,
"hunting_cap": [
25001,
@ -213,9 +221,17 @@
"guild_BuildCd": 1,
"ArenaTicket_max": 10,
"ArenaTicket_RecoveryTime": 144,
"ArenaTicket_cos": 1,
"ArenaTicket_cos": {
"a": "item",
"t": "100004",
"n": 1
},
"VikingExpedition_RecoveryTime": 144,
"VikingExpedition_cos": 1,
"VikingExpedition_cos": {
"a": "item",
"t": "100001",
"n": 1
},
"ArenaTicket_PurchaseRrestrictions": 10,
"arena_InitiaIntegral": 1000,
"arena_RecordMax": 10,

View File

@ -644,5 +644,22 @@
"text": "功能暂未开启"
},
"uiid": 0
},
{
"id": "sign",
"name": {
"key": "num_2028",
"text": "签到"
},
"main": 5,
"optional": "",
"wkqbx": 2,
"kqbx": 0,
"img": "zc_icon_01",
"prompt": {
"key": "opencond_prompt_sign",
"text": "功能暂未开启"
},
"uiid": 0
}
]

View File

@ -9,8 +9,11 @@
"LockSlots": [],
"AssistTeam": 0,
"EventList": [],
"playexp": 1000,
"NoMidwayExit": 0
"playexp": {
"a": "attr",
"t": "exp",
"n": 1000
}
},
{
"id": 102,
@ -22,8 +25,11 @@
"LockSlots": [],
"AssistTeam": 0,
"EventList": [],
"playexp": 1000,
"NoMidwayExit": 0
"playexp": {
"a": "attr",
"t": "exp",
"n": 1000
}
},
{
"id": 103,
@ -35,8 +41,11 @@
"LockSlots": [],
"AssistTeam": 0,
"EventList": [],
"playexp": 1000,
"NoMidwayExit": 0
"playexp": {
"a": "attr",
"t": "exp",
"n": 1000
}
},
{
"id": 104,
@ -48,8 +57,11 @@
"LockSlots": [],
"AssistTeam": 0,
"EventList": [],
"playexp": 1000,
"NoMidwayExit": 0
"playexp": {
"a": "attr",
"t": "exp",
"n": 1000
}
},
{
"id": 105,
@ -61,8 +73,11 @@
"LockSlots": [],
"AssistTeam": 0,
"EventList": [],
"playexp": 1000,
"NoMidwayExit": 0
"playexp": {
"a": "attr",
"t": "exp",
"n": 1000
}
},
{
"id": 106,
@ -74,8 +89,11 @@
"LockSlots": [],
"AssistTeam": 0,
"EventList": [],
"playexp": 1000,
"NoMidwayExit": 0
"playexp": {
"a": "attr",
"t": "exp",
"n": 1000
}
},
{
"id": 107,
@ -87,8 +105,11 @@
"LockSlots": [],
"AssistTeam": 0,
"EventList": [],
"playexp": 1000,
"NoMidwayExit": 0
"playexp": {
"a": "attr",
"t": "exp",
"n": 1000
}
},
{
"id": 108,
@ -100,8 +121,11 @@
"LockSlots": [],
"AssistTeam": 0,
"EventList": [],
"playexp": 1000,
"NoMidwayExit": 0
"playexp": {
"a": "attr",
"t": "exp",
"n": 1000
}
},
{
"id": 109,
@ -113,8 +137,11 @@
"LockSlots": [],
"AssistTeam": 0,
"EventList": [],
"playexp": 1000,
"NoMidwayExit": 0
"playexp": {
"a": "attr",
"t": "exp",
"n": 1000
}
},
{
"id": 110,
@ -126,8 +153,11 @@
"LockSlots": [],
"AssistTeam": 0,
"EventList": [],
"playexp": 1000,
"NoMidwayExit": 0
"playexp": {
"a": "attr",
"t": "exp",
"n": 1000
}
},
{
"id": 111,
@ -139,8 +169,11 @@
"LockSlots": [],
"AssistTeam": 0,
"EventList": [],
"playexp": 1000,
"NoMidwayExit": 0
"playexp": {
"a": "attr",
"t": "exp",
"n": 1000
}
},
{
"id": 112,
@ -152,8 +185,11 @@
"LockSlots": [],
"AssistTeam": 0,
"EventList": [],
"playexp": 1000,
"NoMidwayExit": 0
"playexp": {
"a": "attr",
"t": "exp",
"n": 1000
}
},
{
"id": 113,
@ -165,8 +201,11 @@
"LockSlots": [],
"AssistTeam": 0,
"EventList": [],
"playexp": 1000,
"NoMidwayExit": 0
"playexp": {
"a": "attr",
"t": "exp",
"n": 1000
}
},
{
"id": 114,
@ -178,7 +217,10 @@
"LockSlots": [],
"AssistTeam": 0,
"EventList": [],
"playexp": 1000,
"NoMidwayExit": 0
"playexp": {
"a": "attr",
"t": "exp",
"n": 1000
}
}
]

View File

@ -341,6 +341,7 @@ const (
Reddot28 ReddotType = 10028 //任务----周常活跃奖励红点
Reddot29 ReddotType = 10029 //公会----申请红点
Reddot30 ReddotType = 10030 //邮件-----未读邮件红点
Reddot31 ReddotType = 10031 //维京远征 有挑战次数
)
type TaskType int32

View File

@ -240,9 +240,11 @@ type (
}
IViking interface {
CheckUserBaseVikingInfo(uid string) (data []*pb.DBVikingRank) // 查询玩家最佳通关记录
IReddot
}
IHunting interface {
CheckUserBaseHuntingInfo(uid string) (data []*pb.DBHuntingRank) // 查询玩家最佳通关记录
IReddot
}
// 公会
ISociaty interface {

View File

@ -1,6 +1,7 @@
package hero
import (
"go_dreamfactory/comm"
"go_dreamfactory/lego/core"
"go_dreamfactory/modules"
)
@ -10,6 +11,7 @@ type apiComp struct {
modules.MCompGate
service core.IService
module *Hero
chat comm.IChat
}
const ( //消息回复的头名称
@ -42,6 +44,10 @@ func (this *apiComp) Init(service core.IService, module core.IModule, comp core.
func (this *apiComp) Start() (err error) {
err = this.MCompGate.Start()
var module core.IModule
if module, err = this.service.GetModule(comm.ModuleChat); err != nil {
return
}
this.chat = module.(comm.IChat)
return
}

View File

@ -104,6 +104,14 @@ func (this *apiComp) Awaken(session comm.IUserSession, req *pb.HeroAwakenReq) (c
chanegCard = append(chanegCard, _hero)
session.SendMsg(string(this.module.GetType()), "change", &pb.HeroChangePush{List: chanegCard})
session.SendMsg(string(this.module.GetType()), Awaken, &pb.HeroAwakenResp{Hero: _hero})
//英雄觉醒 【玩家名称】已将【英雄名称】觉醒至满级!
if user := this.module.ModuleUser.GetUser(session.GetUserId()); user != nil {
this.chat.SendSysChatToWorld(comm.ChatSystem11, nil, _hero.JuexingLv, 0, user.Name, _hero.HeroID)
} else {
this.module.Errorf("no found userdata uid:%s", session.GetUserId())
}
//任务相关
this.module.ModuleRtask.SendToRtask(session, comm.Rtype34, 1, _hero.JuexingLv)
this.module.ModuleRtask.SendToRtask(session, comm.Rtype119, _hero.JuexingLv)

View File

@ -230,6 +230,14 @@ func (this *apiComp) DrawCard(session comm.IUserSession, req *pb.HeroDrawCardReq
}
code = this.module.CreateRepeatHeros(session, _mapAddHero, true)
///英雄招募 【玩家名称】在招募中获得了【英雄名称】!
for hid := range _mapAddHero {
if user := this.module.ModuleUser.GetUser(session.GetUserId()); user != nil {
this.chat.SendSysChatToWorld(comm.ChatSystem13, nil, 0, 0, user.Name, hid)
} else {
this.module.Errorf("no found userdata uid:%s", session.GetUserId())
}
}
rsp.Heroes = szCards
session.SendMsg(string(this.module.GetType()), DrawCard, rsp)

View File

@ -149,6 +149,12 @@ func (this *apiComp) Resonance(session comm.IUserSession, req *pb.HeroResonanceR
this.module.DispenseRes(session, resonConfig.Prize, true)
session.SendMsg(string(this.module.GetType()), Resonance, &pb.HeroResonanceResp{Hero: _hero})
//英雄共鸣 【玩家名称】已将【英雄名称】共鸣至满级!
if user := this.module.ModuleUser.GetUser(session.GetUserId()); user != nil {
this.chat.SendSysChatToWorld(comm.ChatSystem10, nil, _hero.ResonateNum, 0, user.Name, _hero.HeroID)
} else {
this.module.Errorf("no found userdata uid:%s", session.GetUserId())
}
// 任务相关
this.module.ModuleRtask.SendToRtask(session, comm.Rtype39, 1)
this.module.ModuleRtask.SendToRtask(session, comm.Rtype127, _hero.Star, utils.ToInt32(_hero.HeroID), _hero.ResonateNum) //A星英雄共鸣N级

View File

@ -163,7 +163,12 @@ func (this *apiComp) StrengthenUpSkill(session comm.IUserSession, req *pb.HeroSt
ChangeList = append(ChangeList, _hero)
session.SendMsg(string(this.module.GetType()), "change", &pb.HeroChangePush{List: ChangeList})
session.SendMsg(string(this.module.GetType()), StrengthenUpSkill, &pb.HeroStrengthenUpSkillResp{Hero: _hero})
//英雄技能培养 【玩家名称】已将【英雄名称】技能培养至满级!
if user := this.module.ModuleUser.GetUser(session.GetUserId()); user != nil {
this.chat.SendSysChatToWorld(comm.ChatSystem9, nil, _hero.Lv, 0, user.Name, _hero.HeroID)
} else {
this.module.Errorf("no found userdata uid:%s", session.GetUserId())
}
this.module.ModuleRtask.SendToRtask(session, comm.Rtype52, utils.ToInt32(_hero.HeroID), 1)
this.module.ModuleRtask.SendToRtask(session, comm.Rtype53, 1)
// 检查是不是满级技能
@ -175,6 +180,7 @@ func (this *apiComp) StrengthenUpSkill(session comm.IUserSession, req *pb.HeroSt
}
}
if maxLv {
this.module.ModuleRtask.SendToRtask(session, comm.Rtype54, 1)
this.module.ModuleRtask.SendToRtask(session, comm.Rtype57, 1)
}

View File

@ -169,6 +169,12 @@ func (this *apiComp) StrengthenUpStar(session comm.IUserSession, req *pb.HeroStr
session.SendMsg(string(this.module.GetType()), "change", &pb.HeroChangePush{List: chanegCard})
session.SendMsg(string(this.module.GetType()), StrengthenUpStar, &pb.HeroStrengthenUpStarResp{Hero: _hero})
//英雄升星 【玩家名称】已将【英雄名称】培养至6星
if user := this.module.ModuleUser.GetUser(session.GetUserId()); user != nil {
this.chat.SendSysChatToWorld(comm.ChatSystem8, nil, _hero.Lv, 0, user.Name, _hero.HeroID)
} else {
this.module.Errorf("no found userdata uid:%s", session.GetUserId())
}
this.module.ModuleRtask.SendToRtask(session, comm.Rtype6, utils.ToInt32(_hero.HeroID), _hero.Star)
this.module.ModuleRtask.SendToRtask(session, comm.Rtype25, 1, utils.ToInt32(_hero.HeroID), _hero.Star)
if _hero.Star == 4 {

View File

@ -136,6 +136,12 @@ func (this *apiComp) StrengthenUplv(session comm.IUserSession, req *pb.HeroStren
if newhero != nil {
_changeHero = append(_changeHero, newhero) // 原来的英雄 只是数量变化了
}
//英雄升级 【玩家名称】已将【英雄名称】培养至60级
if user := this.module.ModuleUser.GetUser(session.GetUserId()); user != nil {
this.chat.SendSysChatToWorld(comm.ChatSystem7, nil, _hero.Lv, 0, user.Name, _hero.HeroID)
} else {
this.module.Errorf("no found userdata uid:%s", session.GetUserId())
}
session.SendMsg(string(this.module.GetType()), "change", &pb.HeroChangePush{List: _changeHero})
session.SendMsg(string(this.module.GetType()), StrengthenUplv, &pb.HeroStrengthenUplvResp{Hero: _hero})
return

View File

@ -22,6 +22,7 @@ type apiComp struct {
configure *configureComp
module *Hunting
friend comm.IFriend
chat comm.IChat
}
//组件初始化接口
@ -40,5 +41,9 @@ func (this *apiComp) Start() (err error) {
return
}
this.friend = module.(comm.IFriend)
if module, err = this.service.GetModule(comm.ModuleChat); err != nil {
return
}
this.chat = module.(comm.IChat)
return
}

View File

@ -66,6 +66,10 @@ func (this *apiComp) Challenge(session comm.IUserSession, req *pb.HuntingChallen
BossType: req.BossType,
Difficulty: req.Difficulty,
})
if user := this.module.ModuleUser.GetUser(session.GetUserId()); user != nil {
this.chat.SendSysChatToWorld(comm.ChatSystem15, nil, req.BossType, req.Difficulty, user.Name)
} else {
this.module.Errorf("no found userdata uid:%s", session.GetUserId())
}
return
}

View File

@ -147,6 +147,11 @@ func (this *apiComp) ChallengeOver(session comm.IUserSession, req *pb.PagodaChal
}
}
code = this.module.ModifySeasonPagodaData(session.GetUserId(), mapData)
if user := this.module.ModuleUser.GetUser(session.GetUserId()); user != nil {
this.chat.SendSysChatToWorld(comm.ChatSystem6, nil, pagoda.PagodaId, 0, user.Name)
} else {
this.module.Errorf("no found userdata uid:%s", session.GetUserId())
}
session.SendMsg(string(this.module.GetType()), PagodaChallengeOverResp, &pb.PagodaChallengeOverResp{Data: pagoda})
}

View File

@ -33,6 +33,5 @@ func (this *ModuleSys) GetType() core.M_Modules {
}
func (this *ModuleSys) IsAccess(funcName string, userId string) (code pb.ErrorCode) {
// return this.modelSys.IsAccess(funcName, userId)
return pb.ErrorCode_Success
return this.modelSys.IsAccess(funcName, userId)
}

View File

@ -144,7 +144,7 @@ func (this *apiComp) Login(session comm.IUserSession, req *pb.UserLoginReq) (cod
// 初始化随机任务数据
// this.module.ModuleRtask.InitCondiData(user.Uid)
//this.Sign(session, &pb.UserSignReq{})
// 日常登录任务
this.module.ModuleRtask.SendToRtask(session, comm.Rtype7, 1)

View File

@ -22,7 +22,9 @@ func (this *apiComp) Sign(session comm.IUserSession, req *pb.UserSignReq) (code
update map[string]interface{}
bReward bool
)
if code = this.module.ModuleSys.IsAccess(comm.Sign, session.GetUserId()); code != pb.ErrorCode_Success {
return
}
update = make(map[string]interface{}, 0)
if sign, err := this.module.modelSign.GetUserSign(session.GetUserId()); err == nil {
start, _ := utils.GetMonthStartEnd()

View File

@ -69,58 +69,3 @@ func (this *ModelSign) updateSignData(uid string, sign *pb.DBSign) (err error) {
}
return
}
// 检测是否达到重置日期
func (this *ModelSign) checkResetSignData(session comm.IUserSession) (code pb.ErrorCode) {
var (
update map[string]interface{}
bReward bool
)
update = make(map[string]interface{}, 0)
if sign, err := this.module.modelSign.GetUserSign(session.GetUserId()); err == nil {
start, _ := utils.GetMonthStartEnd()
if sign.RTime < start { // 重置
sign.RTime = configure.Now().Unix()
sign.SignTime = sign.RTime
sign.SignCount = 1
if newGroup := this.module.configure.GetSignResetConf(sign.Cid + 1); newGroup != -1 { // 获取当前的组id
sign.Cid += 1
sign.Group = newGroup
update["cid"] = sign.Cid
update["group"] = sign.Group
}
update["rTime"] = sign.RTime
update["signTime"] = sign.SignTime
update["signCount"] = sign.SignCount
this.Change(session.GetUserId(), update)
bReward = true
} else {
if !utils.IsToday(sign.SignTime) {
sign.SignCount += 1
update["signCount"] = sign.SignCount
sign.SignTime = configure.Now().Unix()
update["signTime"] = sign.SignTime
sign.RTime = sign.SignTime
update["rTime"] = sign.RTime
this.Change(session.GetUserId(), update)
bReward = true
}
}
_data := this.module.configure.GetSignConf(sign.Cid, sign.Group)
if _data != nil { // 发奖
if bReward {
this.module.DispenseRes(session, _data.Loopgift, true)
}
} else {
if bReward {
this.module.DispenseRes(session, this.module.globalConf.UnifiedReward, true) // 发放通用奖励
}
}
session.SendMsg(string(this.module.GetType()), "sign", &pb.UserSignResp{
Data: sign,
Reward: bReward,
})
}
return
}

View File

@ -22,6 +22,7 @@ type apiComp struct {
configure *configureComp
module *Viking
friend comm.IFriend
chat comm.IChat
}
//组件初始化接口
@ -40,5 +41,10 @@ func (this *apiComp) Start() (err error) {
return
}
this.friend = module.(comm.IFriend)
if module, err = this.service.GetModule(comm.ModuleChat); err != nil {
return
}
this.chat = module.(comm.IChat)
return
}

View File

@ -121,7 +121,11 @@ func (this *apiComp) ChallengeOver(session comm.IUserSession, req *pb.VikingChal
Data: viking,
Asset: asset,
})
if user := this.module.ModuleUser.GetUser(session.GetUserId()); user != nil {
this.chat.SendSysChatToWorld(comm.ChatSystem14, nil, req.BossId, req.Difficulty, user.Name)
} else {
this.module.Errorf("no found userdata uid:%s", session.GetUserId())
}
// 随机任务统计
this.module.ModuleRtask.SendToRtask(session, comm.Rtype73, req.Difficulty, req.BossId, 1)
this.module.ModuleRtask.SendToRtask(session, comm.Rtype74, req.Difficulty, req.BossId)

View File

@ -63,3 +63,15 @@ func (this *modelViking) getVikingList(uid string) (result *pb.DBViking, err err
func (this *modelViking) modifyVikingDataByObjId(uid string, data map[string]interface{}) error {
return this.Change(uid, data)
}
// 红点检测
func (this *modelViking) checkReddot31(uid string) bool {
list, err := this.module.modelViking.getVikingList(uid)
if err != nil {
return false
}
if list.LeftCount > 0 {
return true
}
return false
}

View File

@ -144,3 +144,17 @@ func (this *Viking) CheckRank(uid string, boosID int32, difficulty int32, viking
this.modulerank.SetRankListData("vikingRank"+strconv.Itoa(int(boosID)), difficulty<<16+costTime, objID)
}
}
//红点查询
func (this *Viking) Reddot(session comm.IUserSession, rid ...comm.ReddotType) (reddot map[comm.ReddotType]bool) {
reddot = make(map[comm.ReddotType]bool)
for _, v := range rid {
switch v {
case comm.Reddot31:
reddot[comm.Reddot31] = this.modelViking.checkReddot31(session.GetUserId())
break
}
}
return
}

View File

@ -78,14 +78,14 @@ type GameGlobalData struct {
KungfuTime int32
DreamlandFightnum int32
DreamlandRecovery int32
DreamlandCos int32
DreamlandCos *Gameatn
DreamlandResettime int32
DreamlandLimitTime int32
DreamlandShareTime int32
DreamlandTriggernum int32
HuntingNum int32
HuntingRecovery int32
HuntingCos int32
HuntingCos *Gameatn
HuntingReset int32
HuntingCap []int32
GameTime []int32
@ -111,9 +111,9 @@ type GameGlobalData struct {
GuildBuildCd int32
ArenaTicketMax int32
ArenaTicketRecoveryTime int32
ArenaTicketCos int32
ArenaTicketCos *Gameatn
VikingExpeditionRecoveryTime int32
VikingExpeditionCos int32
VikingExpeditionCos *Gameatn
ArenaTicketPurchaseRrestrictions int32
ArenaInitiaIntegral int32
ArenaRecordMax int32
@ -282,14 +282,14 @@ func (_v *GameGlobalData)Deserialize(_buf map[string]interface{}) (err error) {
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["kungfu_time"].(float64); !_ok_ { err = errors.New("kungfu_time error"); return }; _v.KungfuTime = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["dreamland_fightnum"].(float64); !_ok_ { err = errors.New("dreamland_fightnum error"); return }; _v.DreamlandFightnum = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["dreamland_recovery"].(float64); !_ok_ { err = errors.New("dreamland_recovery error"); return }; _v.DreamlandRecovery = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["dreamland_cos"].(float64); !_ok_ { err = errors.New("dreamland_cos error"); return }; _v.DreamlandCos = int32(_tempNum_) }
{ var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _buf["dreamland_cos"].(map[string]interface{}); !_ok_ { err = errors.New("dreamland_cos error"); return }; if _v.DreamlandCos, err = DeserializeGameatn(_x_); err != nil { return } }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["dreamland_resettime"].(float64); !_ok_ { err = errors.New("dreamland_resettime error"); return }; _v.DreamlandResettime = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["dreamland_limit_time"].(float64); !_ok_ { err = errors.New("dreamland_limit_time error"); return }; _v.DreamlandLimitTime = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["dreamland_share_time"].(float64); !_ok_ { err = errors.New("dreamland_share_time error"); return }; _v.DreamlandShareTime = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["dreamland_triggernum"].(float64); !_ok_ { err = errors.New("dreamland_triggernum error"); return }; _v.DreamlandTriggernum = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["hunting_num"].(float64); !_ok_ { err = errors.New("hunting_num error"); return }; _v.HuntingNum = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["hunting_recovery"].(float64); !_ok_ { err = errors.New("hunting_recovery error"); return }; _v.HuntingRecovery = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["hunting_cos"].(float64); !_ok_ { err = errors.New("hunting_cos error"); return }; _v.HuntingCos = int32(_tempNum_) }
{ var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _buf["hunting_cos"].(map[string]interface{}); !_ok_ { err = errors.New("hunting_cos error"); return }; if _v.HuntingCos, err = DeserializeGameatn(_x_); err != nil { return } }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["hunting_reset"].(float64); !_ok_ { err = errors.New("hunting_reset error"); return }; _v.HuntingReset = int32(_tempNum_) }
{
var _arr_ []interface{}
@ -393,9 +393,9 @@ func (_v *GameGlobalData)Deserialize(_buf map[string]interface{}) (err error) {
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["guild_BuildCd"].(float64); !_ok_ { err = errors.New("guild_BuildCd error"); return }; _v.GuildBuildCd = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["ArenaTicket_max"].(float64); !_ok_ { err = errors.New("ArenaTicket_max error"); return }; _v.ArenaTicketMax = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["ArenaTicket_RecoveryTime"].(float64); !_ok_ { err = errors.New("ArenaTicket_RecoveryTime error"); return }; _v.ArenaTicketRecoveryTime = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["ArenaTicket_cos"].(float64); !_ok_ { err = errors.New("ArenaTicket_cos error"); return }; _v.ArenaTicketCos = int32(_tempNum_) }
{ var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _buf["ArenaTicket_cos"].(map[string]interface{}); !_ok_ { err = errors.New("ArenaTicket_cos error"); return }; if _v.ArenaTicketCos, err = DeserializeGameatn(_x_); err != nil { return } }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["VikingExpedition_RecoveryTime"].(float64); !_ok_ { err = errors.New("VikingExpedition_RecoveryTime error"); return }; _v.VikingExpeditionRecoveryTime = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["VikingExpedition_cos"].(float64); !_ok_ { err = errors.New("VikingExpedition_cos error"); return }; _v.VikingExpeditionCos = int32(_tempNum_) }
{ var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _buf["VikingExpedition_cos"].(map[string]interface{}); !_ok_ { err = errors.New("VikingExpedition_cos error"); return }; if _v.VikingExpeditionCos, err = DeserializeGameatn(_x_); err != nil { return } }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["ArenaTicket_PurchaseRrestrictions"].(float64); !_ok_ { err = errors.New("ArenaTicket_PurchaseRrestrictions error"); return }; _v.ArenaTicketPurchaseRrestrictions = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["arena_InitiaIntegral"].(float64); !_ok_ { err = errors.New("arena_InitiaIntegral error"); return }; _v.ArenaInitiaIntegral = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["arena_RecordMax"].(float64); !_ok_ { err = errors.New("arena_RecordMax error"); return }; _v.ArenaRecordMax = int32(_tempNum_) }