This commit is contained in:
liwei1dao 2022-11-23 22:55:57 +08:00
commit 3c6b2b12cd
39 changed files with 4363 additions and 3576 deletions

View File

@ -1,15 +1,15 @@
[
{
"id": 10001,
"drop": 1001
"drop": 1002
},
{
"id": 10002,
"drop": 1001
"drop": 1002
},
{
"id": 10003,
"drop": 1001
"drop": 1002
},
{
"id": 10004,
@ -58,5 +58,37 @@
{
"id": 10015,
"drop": 1001
},
{
"id": 10101,
"drop": 1001
},
{
"id": 10102,
"drop": 1001
},
{
"id": 10103,
"drop": 1001
},
{
"id": 10301,
"drop": 1001
},
{
"id": 10302,
"drop": 1001
},
{
"id": 10401,
"drop": 1001
},
{
"id": 10402,
"drop": 1001
},
{
"id": 10403,
"drop": 1001
}
]

View File

@ -1,18 +1,18 @@
[
{
"id": 10001,
"scene": "LevelDemo_Fcamer 1",
"formatList": [
101011,
101021
],
"scene": "LevelDemo_Fcamer_1_1",
"formatList": [],
"droplist": [
10001,
10002
10002,
10003
],
"passformatList": [],
"passdroplist": [
10001
10001,
10002,
10003
],
"award": [
{
@ -24,17 +24,18 @@
},
{
"id": 10002,
"scene": "LevelDemo",
"formatList": [
110212,
110213
],
"scene": "LevelDemo_Fcamer_1_2",
"formatList": [],
"droplist": [
10002
10101,
10102,
10103
],
"passformatList": [],
"passdroplist": [
10002
10101,
10102,
10103
],
"award": [
{
@ -46,17 +47,16 @@
},
{
"id": 10003,
"scene": "LevelDemo",
"formatList": [
110213,
110214
],
"scene": "LevelDemo_Fcamer_1_3",
"formatList": [],
"droplist": [
10003
10301,
10302
],
"passformatList": [],
"passdroplist": [
10003
10301,
10302
],
"award": [
{
@ -67,255 +67,17 @@
]
},
{
"id": 20001,
"scene": "LevelDemo",
"formatList": [
110214,
110215
],
"id": 10004,
"scene": "LevelDemo_Fcamer_1_4",
"formatList": [],
"droplist": [
10004
10401,
10402,
10403
],
"passformatList": [],
"passdroplist": [
10004
],
"award": [
{
"a": "attr",
"t": "gold",
"n": 1650
}
]
},
{
"id": 20002,
"scene": "LevelDemo",
"formatList": [
110215,
110216
],
"droplist": [
10005
],
"passformatList": [],
"passdroplist": [
10005
],
"award": [
{
"a": "attr",
"t": "gold",
"n": 1650
}
]
},
{
"id": 20003,
"scene": "LevelDemo",
"formatList": [
110216,
120031
],
"droplist": [
10006
],
"passformatList": [],
"passdroplist": [
10006
],
"award": [
{
"a": "attr",
"t": "gold",
"n": 1650
}
]
},
{
"id": 30001,
"scene": "LevelDemo_Fcamer",
"formatList": [
120031,
120032
],
"droplist": [
10007
],
"passformatList": [],
"passdroplist": [
10007
],
"award": [
{
"a": "attr",
"t": "gold",
"n": 1650
}
]
},
{
"id": 30002,
"scene": "LevelDemo_Fcamer",
"formatList": [
120032,
120033
],
"droplist": [
10008
],
"passformatList": [],
"passdroplist": [
10008
],
"award": [
{
"a": "attr",
"t": "gold",
"n": 1650
}
]
},
{
"id": 30003,
"scene": "LevelDemo_Fcamer",
"formatList": [
120033,
120034
],
"droplist": [
10009
],
"passformatList": [],
"passdroplist": [
10009
],
"award": [
{
"a": "attr",
"t": "gold",
"n": 1650
}
]
},
{
"id": 40001,
"scene": "LevelDemo_Fcamer",
"formatList": [
120034,
120035
],
"droplist": [
10010
],
"passformatList": [],
"passdroplist": [
10010
],
"award": [
{
"a": "attr",
"t": "gold",
"n": 1650
}
]
},
{
"id": 40002,
"scene": "LevelDemo_Fcamer",
"formatList": [
120035
],
"droplist": [
10011
],
"passformatList": [],
"passdroplist": [
10011
],
"award": [
{
"a": "attr",
"t": "gold",
"n": 1650
}
]
},
{
"id": 40003,
"scene": "LevelDemo_Fcamer",
"formatList": [
120036
],
"droplist": [
10012
],
"passformatList": [],
"passdroplist": [
10012
],
"award": [
{
"a": "attr",
"t": "gold",
"n": 1650
}
]
},
{
"id": 50001,
"scene": "LevelDemo_Fcamer",
"formatList": [
130011
],
"droplist": [
10013
],
"passformatList": [],
"passdroplist": [
10013
],
"award": [
{
"a": "attr",
"t": "gold",
"n": 1650
}
]
},
{
"id": 50002,
"scene": "LevelDemo_Fcamer",
"formatList": [
130012
],
"droplist": [
10014
],
"passformatList": [],
"passdroplist": [
10014
],
"award": [
{
"a": "attr",
"t": "gold",
"n": 1650
}
]
},
{
"id": 50003,
"scene": "LevelDemo_Fcamer",
"formatList": [
130013
],
"droplist": [
10015
],
"passformatList": [],
"passdroplist": [
10015
10403
],
"award": [
{

View File

@ -718,5 +718,95 @@
"n": 1
}
]
},
{
"index": "51",
"var": [
{
"a": "hero",
"t": "43901",
"n": 50
}
]
},
{
"index": "52",
"var": [
{
"a": "hero",
"t": "43902",
"n": 50
}
]
},
{
"index": "53",
"var": [
{
"a": "hero",
"t": "43903",
"n": 50
}
]
},
{
"index": "54",
"var": [
{
"a": "hero",
"t": "43921",
"n": 50
}
]
},
{
"index": "55",
"var": [
{
"a": "hero",
"t": "44921",
"n": 50
}
]
},
{
"index": "56",
"var": [
{
"a": "hero",
"t": "42911",
"n": 50
}
]
},
{
"index": "57",
"var": [
{
"a": "hero",
"t": "43911",
"n": 50
}
]
},
{
"index": "58",
"var": [
{
"a": "hero",
"t": "44911",
"n": 50
}
]
},
{
"index": "59",
"var": [
{
"a": "hero",
"t": "45921",
"n": 50
}
]
}
]

View File

@ -5,7 +5,7 @@
"card_pool_type": "base_pool1",
"star": 3,
"race": 1,
"id": "13003",
"id": "25001",
"weight": 1000
},
{
@ -14,7 +14,7 @@
"card_pool_type": "base_pool1",
"star": 4,
"race": 1,
"id": "14007",
"id": "25001",
"weight": 1000
},
{
@ -23,7 +23,7 @@
"card_pool_type": "base_pool1",
"star": 5,
"race": 1,
"id": "14007",
"id": "25001",
"weight": 1000
},
{

View File

@ -1526,7 +1526,13 @@
"needracestar": 5,
"needracenum": 5,
"gold": 10000,
"starup": []
"starup": [
{
"a": "item",
"t": "90001",
"n": 1
}
]
},
{
"key": 94,
@ -1619,7 +1625,13 @@
"needracestar": 5,
"needracenum": 5,
"gold": 10000,
"starup": []
"starup": [
{
"a": "item",
"t": "90002",
"n": 1
}
]
},
{
"key": 100,
@ -3468,7 +3480,13 @@
"needracestar": 4,
"needracenum": 4,
"gold": 10000,
"starup": []
"starup": [
{
"a": "item",
"t": "90003",
"n": 1
}
]
},
{
"key": 213,

File diff suppressed because it is too large Load Diff

View File

@ -955,6 +955,127 @@
"data4": 0,
"data5": 0
},
{
"id": 183,
"datatype": 2,
"type": 140,
"inited": [],
"data1": 1,
"data2": 10001,
"data3": 0,
"data4": 0,
"data5": 0
},
{
"id": 184,
"datatype": 2,
"type": 140,
"inited": [],
"data1": 1,
"data2": 10002,
"data3": 0,
"data4": 0,
"data5": 0
},
{
"id": 185,
"datatype": 2,
"type": 140,
"inited": [],
"data1": 1,
"data2": 10003,
"data3": 0,
"data4": 0,
"data5": 0
},
{
"id": 186,
"datatype": 2,
"type": 140,
"inited": [],
"data1": 1,
"data2": 20001,
"data3": 0,
"data4": 0,
"data5": 0
},
{
"id": 187,
"datatype": 2,
"type": 109,
"inited": [],
"data1": 1,
"data2": 0,
"data3": 0,
"data4": 0,
"data5": 0
},
{
"id": 188,
"datatype": 2,
"type": 104,
"inited": [],
"data1": 100,
"data2": 0,
"data3": 0,
"data4": 0,
"data5": 0
},
{
"id": 189,
"datatype": 2,
"type": 70,
"inited": [],
"data1": 1,
"data2": 110,
"data3": 0,
"data4": 0,
"data5": 0
},
{
"id": 190,
"datatype": 2,
"type": 70,
"inited": [],
"data1": 1,
"data2": 111,
"data3": 1,
"data4": 1,
"data5": 1
},
{
"id": 191,
"datatype": 2,
"type": 70,
"inited": [],
"data1": 1,
"data2": 112,
"data3": 2,
"data4": 2,
"data5": 2
},
{
"id": 192,
"datatype": 2,
"type": 70,
"inited": [],
"data1": 1,
"data2": 113,
"data3": 3,
"data4": 3,
"data5": 3
},
{
"id": 193,
"datatype": 2,
"type": 70,
"inited": [],
"data1": 1,
"data2": 114,
"data3": 4,
"data4": 4,
"data5": 4
},
{
"id": 10001,
"datatype": 2,

View File

@ -4,305 +4,167 @@
"FormatList": [
700011
],
"DefaultHero": 700011,
"DefaultHero": 0,
"SelectableHero": [],
"LockSlots": [
3,
4
],
"AssistTeam": 710003,
"EventList": [
12,
14
]
"LockSlots": [],
"AssistTeam": 0,
"EventList": [],
"playexp": 1000
},
{
"id": 102,
"FormatList": [
700011
700012
],
"DefaultHero": 700011,
"DefaultHero": 0,
"SelectableHero": [],
"LockSlots": [
3,
4
],
"AssistTeam": 710003,
"EventList": [
12,
14
]
"LockSlots": [],
"AssistTeam": 0,
"EventList": [],
"playexp": 1000
},
{
"id": 103,
"FormatList": [
700011
700013
],
"DefaultHero": 700011,
"DefaultHero": 0,
"SelectableHero": [],
"LockSlots": [
3,
4
],
"AssistTeam": 710003,
"EventList": [
12,
14
]
"LockSlots": [],
"AssistTeam": 0,
"EventList": [],
"playexp": 1000
},
{
"id": 104,
"FormatList": [
700011
700014
],
"DefaultHero": 700011,
"DefaultHero": 0,
"SelectableHero": [],
"LockSlots": [
3,
4
],
"AssistTeam": 710003,
"EventList": [
12,
14
]
"LockSlots": [],
"AssistTeam": 0,
"EventList": [],
"playexp": 1000
},
{
"id": 105,
"FormatList": [
700011
700015
],
"DefaultHero": 700011,
"DefaultHero": 0,
"SelectableHero": [],
"LockSlots": [
3,
4
],
"AssistTeam": 710003,
"EventList": [
12,
14
]
"LockSlots": [],
"AssistTeam": 0,
"EventList": [],
"playexp": 1000
},
{
"id": 106,
"FormatList": [
700011
700016
],
"DefaultHero": 700011,
"DefaultHero": 0,
"SelectableHero": [],
"LockSlots": [
3,
4
],
"AssistTeam": 710003,
"EventList": [
12,
14
]
"LockSlots": [],
"AssistTeam": 0,
"EventList": [],
"playexp": 1000
},
{
"id": 107,
"FormatList": [
700011
700017
],
"DefaultHero": 700011,
"DefaultHero": 0,
"SelectableHero": [],
"LockSlots": [
3,
4
],
"AssistTeam": 710003,
"EventList": [
12,
14
]
"LockSlots": [],
"AssistTeam": 0,
"EventList": [],
"playexp": 1000
},
{
"id": 108,
"FormatList": [
700011
700018
],
"DefaultHero": 700011,
"DefaultHero": 0,
"SelectableHero": [],
"LockSlots": [
3,
4
],
"AssistTeam": 710003,
"EventList": [
12,
14
]
"LockSlots": [],
"AssistTeam": 0,
"EventList": [],
"playexp": 1000
},
{
"id": 109,
"FormatList": [
700011
700019
],
"DefaultHero": 700011,
"DefaultHero": 0,
"SelectableHero": [],
"LockSlots": [
3,
4
],
"AssistTeam": 710003,
"EventList": [
12,
14
]
"LockSlots": [],
"AssistTeam": 0,
"EventList": [],
"playexp": 1000
},
{
"id": 110,
"FormatList": [
700011
700020
],
"DefaultHero": 700011,
"DefaultHero": 0,
"SelectableHero": [],
"LockSlots": [
3,
4
],
"AssistTeam": 710003,
"EventList": [
12,
14
]
"LockSlots": [],
"AssistTeam": 0,
"EventList": [],
"playexp": 1000
},
{
"id": 111,
"FormatList": [
700011
700021
],
"DefaultHero": 700011,
"DefaultHero": 0,
"SelectableHero": [],
"LockSlots": [
3,
4
],
"AssistTeam": 710003,
"EventList": [
12,
14
]
"LockSlots": [],
"AssistTeam": 0,
"EventList": [],
"playexp": 1000
},
{
"id": 112,
"FormatList": [
700011
700022
],
"DefaultHero": 700011,
"DefaultHero": 0,
"SelectableHero": [],
"LockSlots": [
3,
4
],
"AssistTeam": 710003,
"EventList": [
12,
14
]
"LockSlots": [],
"AssistTeam": 0,
"EventList": [],
"playexp": 1000
},
{
"id": 113,
"FormatList": [
700011
700023
],
"DefaultHero": 700011,
"DefaultHero": 0,
"SelectableHero": [],
"LockSlots": [
3,
4
],
"AssistTeam": 710003,
"EventList": [
12,
14
]
"LockSlots": [],
"AssistTeam": 0,
"EventList": [],
"playexp": 1000
},
{
"id": 114,
"FormatList": [
700011
700024
],
"DefaultHero": 700011,
"DefaultHero": 0,
"SelectableHero": [],
"LockSlots": [
3,
4
],
"AssistTeam": 710003,
"EventList": [
12,
14
]
},
{
"id": 115,
"FormatList": [
700011
],
"DefaultHero": 700011,
"SelectableHero": [],
"LockSlots": [
3,
4
],
"AssistTeam": 710003,
"EventList": [
12,
14
]
},
{
"id": 116,
"FormatList": [
700011
],
"DefaultHero": 700011,
"SelectableHero": [],
"LockSlots": [
3,
4
],
"AssistTeam": 710003,
"EventList": [
12,
14
]
},
{
"id": 117,
"FormatList": [
700011
],
"DefaultHero": 700011,
"SelectableHero": [],
"LockSlots": [
3,
4
],
"AssistTeam": 710003,
"EventList": [
12,
14
]
},
{
"id": 118,
"FormatList": [
700011
],
"DefaultHero": 700011,
"SelectableHero": [],
"LockSlots": [
3,
4
],
"AssistTeam": 710003,
"EventList": [
12,
14
]
"LockSlots": [],
"AssistTeam": 0,
"EventList": [],
"playexp": 1000
}
]

View File

@ -18,7 +18,7 @@
2,
100001
],
"completetask": 0,
"completetask": 183,
"auto_accept": 0,
"overtips": 1,
"reword": [
@ -56,7 +56,7 @@
100002
],
"completetask": 0,
"auto_accept": 0,
"auto_accept": 1,
"overtips": 1,
"reword": [],
"day": "",

View File

@ -461,7 +461,8 @@ const (
Rtype101 TaskType = 101 //获得X星职业武器N件历史(从创号开始记录每获得1件X星职业武器则进度+1)
Rtype102 TaskType = 102 //阵营饰品强化成功N次历史(从创号开始记录,强化成功进度+1)
Rtype103 TaskType = 103 //获得X星阵营饰品N件历史(从创号开始记录每获得1件X星阵营饰品则进度+1)
Rtype104 TaskType = 104 //消费N个钻石历史(从创号开始记录,每次消耗钻石增加消耗额的进度)
//消费N个钻石历史(从创号开始记录,每次消耗钻石增加消耗额的进度)
Rtype104 TaskType = 104
Rtype105 TaskType = 105 //商店刷新N次(从接到任务开始,每次刷新商店进度+1)
Rtype106 TaskType = 106 //跨服聊天发言N次(从接到任务开始,每次跨服发言成功进度+1)
Rtype107 TaskType = 107 //赠送N个人好感度(从接到任务开始每赠送1个好友好感度则进度+1)

View File

@ -168,6 +168,8 @@ type (
CheckCondi(uid string, condiId int32) (code pb.ErrorCode)
// 远程任务条件校验
RemoteCheckCondi(uid string, condiId int32, rsp *pb.DBRtaskRecord) error
// 删除任务条件数据
RemoveCondi(uid string ,condiId int32) error
//任务触发
SendToRtask(session IUserSession, rtaskType TaskType, params ...int32) (code pb.ErrorCode)
// 初始化条件数据
@ -224,7 +226,9 @@ type (
IPagoda interface {
ModifyPagodaFloor(session IUserSession, level int32) (code pb.ErrorCode)
CheckUserBasePagodaInfo(uid string) (data *pb.DBPagodaRecord) // 查询玩家最佳通关记录
CheckPagodaMaxFloor(uid string, pagodaType int32) int32 // 查询塔通关难度type 1 表示普通塔 2 赛季塔
// Check Rtype84 Rtype85 Rtype86
CheckPagodaMaxFloor(uid string, pagodaType int32) int32 // 查询塔通关难度type 1 表示普通塔 2 赛季塔
///红点
IReddot
}

View File

@ -88,7 +88,7 @@ func (this *apiComp) ChallengeReceive(session comm.IUserSession, req *pb.CombatC
return
}
this.module.DispenseRes(session, level.Award, true)
this.module.ModuleRtask.SendToRtask(session, comm.Rtype140, level.Id)
this.module.ModuleRtask.SendToRtask(session, comm.Rtype140, 1, level.Id)
}
}

View File

@ -94,7 +94,7 @@ func (this *apiComp) Drop(session comm.IUserSession, req *pb.CombatDropReq) (cod
return
}
this.module.DispenseRes(session, level.Award, true)
this.module.ModuleRtask.SendToRtask(session, comm.Rtype140, level.Id)
this.module.ModuleRtask.SendToRtask(session, comm.Rtype140, 1, level.Id)
}
session.SendMsg(string(this.module.GetType()), "drop", &pb.CombatDropResp{Code: code, Atns: atns, Pass: pass})

View File

@ -37,8 +37,9 @@ func (this *apiComp) Getreward(session comm.IUserSession, req *pb.FriendGetrewar
return
}
if code = this.moduleFriend.DispenseRes(session, this.moduleFriend.globalConf.FriendPeize, true); code != pb.ErrorCode_Success {
this.moduleFriend.Error("好友领奖励", log.Fields{"uid": uid, "reward": this.moduleFriend.globalConf.FriendPeize, "code": code})
globalConf := this.moduleFriend.configure.GetGlobalConf()
if code = this.moduleFriend.DispenseRes(session, globalConf.FriendPeize, true); code != pb.ErrorCode_Success {
this.moduleFriend.Error("好友领奖励", log.Fields{"uid": uid, "reward": globalConf.FriendPeize, "code": code})
return
}

View File

@ -62,6 +62,7 @@ func (this *GM) OnInstallComp() {
//bingo:Iamyoudad
func (this *GM) CreateCmd(session comm.IUserSession, cmd string) (code pb.ErrorCode) {
code = pb.ErrorCode_ReqParameterError
cmd = strings.Replace(cmd, " ", "", -1) // 去空格
keys := strings.Split(cmd, ":")
if len(keys) == 2 {
if keys[0] == "bingo" {

View File

@ -30,6 +30,7 @@ func (this *apiComp) GetList(session comm.IUserSession, req *pb.GourmetGetListRe
this.module.modelGourmet.CalculationGourmet(session.GetUserId(), _gourmet)
session.SendMsg(string(this.module.GetType()), GourmetGetListResp, &pb.GourmetGetListResp{Data: _gourmet})
// 任务统计
this.module.ModuleRtask.SendToRtask(session, comm.Rtype136, _gourmet.TotalTime)
return
}

View File

@ -200,6 +200,9 @@ func (this *apiComp) DrawCard(session comm.IUserSession, req *pb.HeroDrawCardReq
if int32(len(v)) > randomIndex {
if star == 5 { // 抽出5星英雄后A次抽奖内不会再抽到5星英雄普通卡池+阵营卡池)
curDrawCount := drawCount - req.DrawCount
if curDrawCount <= 10 { // 首次十连不计算
continue
}
newID := this.module.ContinuousRestriction(session.GetUserId(), v[randomIndex].Id, curDrawCount+int32(index), strPool[index])
szCards = append(szCards, newID)
continue
@ -241,10 +244,10 @@ func (this *apiComp) DrawCard(session comm.IUserSession, req *pb.HeroDrawCardReq
this.module.ModuleRtask.SendToRtask(session, comm.Rtype17, 1, k)
}
}
this.module.ModuleRtask.SendToRtask(session, comm.Rtype14, req.DrawCount)
//this.module.ModuleRtask.SendToRtask(session, comm.Rtype14, req.DrawCount)
this.module.ModuleRtask.SendToRtask(session, comm.Rtype18, req.DrawCount)
} else { // 阵营招募
this.module.ModuleRtask.SendToRtask(session, comm.Rtype15, req.DrawCount)
//this.module.ModuleRtask.SendToRtask(session, comm.Rtype15, req.DrawCount)
this.module.ModuleRtask.SendToRtask(session, comm.Rtype19, req.DrawCount)
if drawCount == 10 {
this.module.ModuleRtask.SendToRtask(session, comm.Rtype91, 1) // 阵营10连

View File

@ -56,7 +56,7 @@ func (this *apiComp) UseGift(session comm.IUserSession, req *pb.LibraryUseGiftRe
N: v,
})
conf, err := this.configure.GetItemConfigureData(k)
conf, err := this.module.configure.GetItemConfigureData(k)
if err != nil {
this.module.Errorf("err:%v", err)
return

View File

@ -15,7 +15,6 @@ const (
game_libraryhistory = "game_libraryhistory.json" // 往事id 对应的奖励
game_libraryfavor = "game_libraryfavor.json" // 英雄好感度升级所需的经验
game_librarystory = "game_librarystory.json" // 羁绊id对应剧情奖励
//game_favornum = "game_favornum.json" // 羁绊id对应经验
)
///配置管理基础组件
@ -33,7 +32,6 @@ func (this *configureComp) Init(service core.IService, module core.IModule, comp
game_libraryhistory: cfg.NewGameLibraryHistory,
game_libraryfavor: cfg.NewGameLibraryFavor,
game_librarystory: cfg.NewGameLibraryStory,
//game_favornum: cfg.NewGameFavorNum,
})
this.fetter = make(map[int64]*cfg.GameLibraryFetterData, 0)
@ -141,15 +139,3 @@ func (this *configureComp) GetLibraryStory(fid int32) (data *cfg.GameLibraryStor
}
return
}
// 获取羁绊英雄经验数据
// func (this *configureComp) GetFavorNum(cid string) (data *cfg.GameFavorNumData) {
// if v, err := this.GetConfigure(game_favornum); err == nil {
// if configure, ok := v.(*cfg.GameFavorNum); ok {
// data = configure.Get(cid)
// }
// } else {
// log.Errorf("GetLibraryStory conf err:%v", err)
// }
// return
// }

View File

@ -89,7 +89,6 @@ func (this *modelMail) MailGetMailAttachmentState(objId string) (*pb.DBMailData,
err := this.DB.FindOne(comm.TableMail, bson.M{"_id": objId}).Decode(&nd)
return nd, err
//return !nd.Reward && len(nd.GetItems()) > 0 && nd.Uid == uid
}
// 更新领取附件状态

View File

@ -113,5 +113,8 @@ func (this *apiComp) ChallengeOver(session comm.IUserSession, req *pb.MainlineCh
}
session.SendMsg(string(this.module.GetType()), MainlineChallengeOverResp, &pb.MainlineChallengeOverResp{Data: mainline})
// 主线任务统计 Rtype60
this.module.ModuleRtask.SendToRtask(session, comm.Rtype60, 1)
this.module.ModuleRtask.SendToRtask(session, comm.Rtype61, int32(req.MainlineId))
return
}

View File

@ -302,6 +302,9 @@ func (this *ModuleBase) ConsumeRes(session comm.IUserSession, res []*cfg.Gameatn
return
}
this.Debugf("消耗玩家资源: %v", attrs)
if count,ok:= attrs[comm.ResDiamond];ok{
this.ModuleRtask.SendToRtask(session, comm.Rtype104, count)
}
}
if len(items) > 0 {
code = this.ModuleItems.AddItems(session, items, bPush)

View File

@ -71,6 +71,7 @@ func (this *apiComp) ChallengeOver(session comm.IUserSession, req *pb.PagodaChal
if code != pb.ErrorCode_Success {
return
}
costTime = req.Report.Costtime
// 加经验
if req.Report != nil && req.Report.Info != nil && len(req.Report.Info.Redflist) > 0 {
for _, v := range req.Report.Info.Redflist[0].Team {
@ -93,23 +94,9 @@ func (this *apiComp) ChallengeOver(session comm.IUserSession, req *pb.PagodaChal
} else {
this.module.Errorf("no found userdata uid:%s", session.GetUserId())
}
if req.Report != nil && req.Report.Info != nil && len(req.Report.Info.Redflist) > 0 {
sz := make([]*pb.LineUp, 5)
for i, v := range req.Report.Info.Redflist[0].Team {
if v != nil {
sz[i] = &pb.LineUp{
Cid: v.HeroID,
Star: v.Star,
Lv: v.Lv,
}
}
}
if req.Report != nil {
costTime = req.Report.Costtime
}
this.module.modulerank.SetNormalPagodaRankList("pagodaRank", pagoda.PagodaId<<8+costTime, session.GetUserId())
}
//this.module.modulerank.SetNormalPagodaRankList("pagodaRank", pagoda.PagodaId<<16-costTime, session.GetUserId())
// 普通塔通关了
Nomalcfg := this.module.configure.GetPagodaConfigData(comm.PagodaType, pagoda.PagodaId+1)
if Nomalcfg == nil {

View File

@ -119,7 +119,6 @@ func (this *Pagoda) CleanSeasonPagodaData() (code pb.ErrorCode) {
log.Errorf("delete failed")
}
}
return
}

View File

@ -7,7 +7,8 @@ import (
)
const (
PrivilegeGetListResp = "getlist"
PrivilegeGetListResp = "getlist"
PrivilegeBuyYuekaResp = "buyyueka"
)
type apiComp struct {

View File

@ -0,0 +1,26 @@
package privilege
import (
"go_dreamfactory/comm"
"go_dreamfactory/pb"
"google.golang.org/protobuf/proto"
)
//参数校验
func (this *apiComp) BuyYuekaCheck(session comm.IUserSession, req *pb.PrivilegeBuyYuekaReq) (code pb.ErrorCode) {
if req.CID == "" {
code = pb.ErrorCode_ReqParameterError
}
return
}
///获取特权列表
func (this *apiComp) BuyYueka(session comm.IUserSession, req *pb.PrivilegeBuyYuekaReq) (code pb.ErrorCode, data proto.Message) {
if code = this.BuyYuekaCheck(session, req); code != pb.ErrorCode_Success {
return
}
_, code = this.module.CreatePrivilegeCard(session, req.CID)
return
}

View File

@ -98,7 +98,6 @@ func (this *Privilege) CreatePrivilegeCard(session comm.IUserSession, cId string
code = pb.ErrorCode_PayRenewTimeErr
return
}
}
if err = this.modelPrivilege.Change(session.GetUserId(), map[string]interface{}{
"eTime": v.ETime,
@ -144,7 +143,7 @@ func (this *Privilege) CreatePrivilegeCard(session comm.IUserSession, cId string
}
// 推送
session.SendMsg(string(this.GetType()), PrivilegeGetListResp, &pb.PrivilegeGetListResp{Data: []*pb.DBPrivilege{data}})
session.SendMsg(string(this.GetType()), PrivilegeBuyYuekaResp, &pb.PrivilegeGetListResp{Data: list})
return
}
@ -177,7 +176,7 @@ func (this *Privilege) RenewPrivilegeCard(session comm.IUserSession, cId string)
break
}
session.SendMsg(string(this.GetType()), PrivilegeGetListResp, &pb.PrivilegeGetListResp{Data: []*pb.DBPrivilege{v}})
session.SendMsg(string(this.GetType()), PrivilegeBuyYuekaResp, &pb.PrivilegeGetListResp{Data: list})
atn.T = conf.Id
res = append(res, atn) // 加资源
for _, v := range conf.DisposableReward {

View File

@ -25,6 +25,8 @@ func (this *ModelRtaskRecord) greatEqualFirstParam(cfg *cfg.GameRdtaskCondiData,
return
}
// 传递参数小于等于配置参数
// 适合只比较首个参数(一个参数)
func (this *ModelRtaskRecord) lessEqualFirstParam(cfg *cfg.GameRdtaskCondiData, vals ...int32) (condiId int32, err error) {
if ok, err1 := soLessEqual(vals[0], cfg.Data1); !ok {
err = errors.WithMessagef(err1, "id: %v type:%v vals:%v", cfg.Id, cfg.Type, vals)

View File

@ -51,6 +51,7 @@ func (this *ModelRtaskRecord) getRecord(uid string) *pb.DBRtaskRecord {
// 初始化任务条件数据
// 玩家登录时调用
// Deprecated
func (this *ModelRtaskRecord) initCondiData(uid string) error {
dr := this.getRecord(uid)
// 判断是否有记录

View File

@ -162,12 +162,19 @@ func (this *ModuleRtask) initRtaskVerifyHandle() {
verify: this.modelRtaskRecord.verifyFirstGreatEqualParam,
update: this.modelRtaskRecord.overrideUpdate,
})
case comm.Rtype18:
this.registerVerifyHandle(v.Id, &rtaskCondi{
cfg: typeCfg,
find: this.modelRtaskRecord.greatEqualFirstParam,
verify: this.modelRtaskRecord.verifyFirstGreatEqualParam,
update: this.modelRtaskRecord.addUpdate,
})
case comm.Rtype7, comm.Rtype12, comm.Rtype13, comm.Rtype14, comm.Rtype15,
comm.Rtype18, comm.Rtype19, comm.Rtype21, comm.Rtype24,
comm.Rtype19, comm.Rtype21, comm.Rtype24,
comm.Rtype26, comm.Rtype27, comm.Rtype28, comm.Rtype38,
comm.Rtype39, comm.Rtype50, comm.Rtype51, comm.Rtype53,
comm.Rtype54, comm.Rtype57, comm.Rtype58, comm.Rtype60,
comm.Rtype62, comm.Rtype64, comm.Rtype69, comm.Rtype72:
comm.Rtype62, comm.Rtype64, comm.Rtype69, comm.Rtype72, comm.Rtype104:
this.registerVerifyHandle(v.Id, &rtaskCondi{
cfg: typeCfg,
find: this.modelRtaskRecord.lessEqualFirstParam,
@ -181,7 +188,7 @@ func (this *ModuleRtask) initRtaskVerifyHandle() {
verify: this.modelRtask.verifyRtype20,
update: this.modelRtaskRecord.overrideUpdate,
})
case comm.Rtype22:
case comm.Rtype22, comm.Rtype109:
this.registerVerifyHandle(v.Id, &rtaskCondi{
cfg: typeCfg,
find: this.modelRtaskRecord.equalFirstParam,
@ -256,11 +263,13 @@ func (this *ModuleRtask) SendToRtask(session comm.IUserSession, rtaskType comm.T
}
if v.find == nil {
this.Warn("未设置find Handle", log.Fields{"uid": uid, "condiId": codi.Id})
return
}
if condiId, err = v.find(v.cfg, params...); condiId == 0 {
if err != nil {
this.Warn(errors.WithMessage(err, uid).Error(), log.Fields{})
this.Warnln(errors.WithMessage(err, uid).Error())
}
} else {
condis = append(condis, v)
@ -317,7 +326,16 @@ func (this *ModuleRtask) CheckCondi(uid string, condiId int32) (code pb.ErrorCod
return
}
func (this *ModuleRtask) RemoveCondi(uid string, condiId int32) (err error) {
dr := this.modelRtaskRecord.getRecord(uid)
if dr != nil && dr.Vals != nil {
delete(dr.Vals, condiId)
}
return
}
// 初始化任务条件数据
// Deprecated
func (this *ModuleRtask) InitCondiData(uid string) error {
return this.modelRtaskRecord.initCondiData(uid)
}

View File

@ -51,6 +51,8 @@ func (this *apiComp) Agree(session comm.IUserSession, req *pb.SociatyAgreeReq) (
return
}
// 触发任务条件
this.module.ModuleRtask.SendToRtask(session, comm.Rtype109, 1)
// 发邮件
if err := this.module.modelSociaty.sendMail("GuildApproved", []string{sociaty.Name}, []string{req.Uid}); err != nil {
this.module.Error("发送邮件 模板ID:GuildApproved", log.Fields{"uid": uid, "申请人": req.Uid, "sociatyId": sociaty.Id})

View File

@ -83,7 +83,8 @@ func (this *apiComp) Apply(session comm.IUserSession, req *pb.SociatyApplyReq) (
}
// 申请
if err := this.module.modelSociaty.apply(uid, sociaty); err != nil {
isCheck, err := this.module.modelSociaty.apply(uid, sociaty)
if err != nil {
var customError = new(comm.CustomError)
if errors.As(err, &customError) {
code = customError.Code
@ -93,6 +94,12 @@ func (this *apiComp) Apply(session comm.IUserSession, req *pb.SociatyApplyReq) (
this.module.Error("公会申请", log.Fields{"uid": uid, "sociatyId": req.SociatyId, "err": err.Error()})
return
}
// 无需审核
if !isCheck {
// 触发任务条件
this.module.ModuleRtask.SendToRtask(session, comm.Rtype109, 1)
}
rsp := &pb.SociatyApplyResp{
Uid: uid,
ScoiatyId: req.SociatyId,

View File

@ -232,9 +232,10 @@ func (this *ModelSociaty) getUserSociaty(uid string) (sociaty *pb.DBSociaty) {
}
// 申请公会
func (this *ModelSociaty) apply(uid string, sociaty *pb.DBSociaty) error {
func (this *ModelSociaty) apply(uid string, sociaty *pb.DBSociaty) (isCheck bool,err error) {
// 判断公会审批设置
if sociaty.IsApplyCheck { //需要审核
isCheck = true
sociaty.ApplyRecord = append(sociaty.ApplyRecord, &pb.ApplyRecord{
Uid: uid,
Ctime: configure.Now().Unix(),
@ -242,15 +243,15 @@ func (this *ModelSociaty) apply(uid string, sociaty *pb.DBSociaty) error {
update := map[string]interface{}{
"applyRecord": sociaty.ApplyRecord,
}
return this.updateSociaty(sociaty.Id, update)
err = this.updateSociaty(sociaty.Id, update)
} else { //无需审核直接入会
if err := this.addMember(uid, sociaty); err != nil {
return err
return isCheck,err
}
//初始玩家公会任务
this.moduleSociaty.modelSociatyTask.initSociatyTask(uid, sociaty.Id)
}
return nil
return
}
// 设置公会

View File

@ -233,6 +233,11 @@ func (this *ModelTask) clearTask(uid string, taskTag ...comm.TaskTag) {
this.moduleTask.Errorf("uid: %v err:%v", uid, err)
return
}
//删除任务条件数据
dr := this.moduleTask.ModuleRtask.GetCondiData(uid)
if dr != nil && dr.Vals!=nil{
delete(dr.Vals, v.TypeId)
}
}
}

View File

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

View File

@ -80,14 +80,15 @@ func (this *apiComp) Finish(session comm.IUserSession, req *pb.WorldtaskFinishRe
var nextTaskId int32
finishCall := func() {
defer func() {
this.module.Debug("世界任务完成", log.Fields{"uid": uid, "params": req})
}()
nextTaskId = curTaskConf.IdAfter
defer func() {
this.module.Debug("世界任务完成", log.Fields{"uid": uid, "params": req, "nextTaskId": nextTaskId})
}()
// 完成任务
if err := this.module.modelWorldtask.finishTask(req.GroupId, req.TaskId, userTask); err != nil {
code = pb.ErrorCode_WorldtaskFinish
this.module.Error("finishTask", log.Fields{"uid": uid, "groupId": req.GroupId, "taskId": req.TaskId, "err": err.Error()})
this.module.Error("完成任务失败", log.Fields{"uid": uid, "groupId": req.GroupId, "taskId": req.TaskId, "err": err.Error()})
return
}
// 发奖
@ -99,6 +100,10 @@ func (this *apiComp) Finish(session comm.IUserSession, req *pb.WorldtaskFinishRe
if curTaskConf.Completetask != 0 {
if c := this.module.ModuleRtask.CheckCondi(uid, curTaskConf.Completetask); c == pb.ErrorCode_Success {
finishCall()
} else {
this.module.Debug("任务完成条件未通过", log.Fields{"uid": uid, "condiId": curTaskConf.Completetask})
code = pb.ErrorCode_WorldtaskNoComplete
return
}
} else {
finishCall()
@ -113,8 +118,9 @@ func (this *apiComp) Finish(session comm.IUserSession, req *pb.WorldtaskFinishRe
code = pb.ErrorCode_SystemError
}
// 任务完成推送
// 世界任务类型
if curTaskConf.Des == 2 {
// 任务完成推送
if err := session.SendMsg(string(this.module.GetType()), WorldtaskNexttaskPush, &pb.WorldtaskNexttaskPush{
NextTaskId: nextTaskId,
}); err != nil {

View File

@ -52,7 +52,7 @@ func (this *ModelWorldtask) IsPreFinished(userTask *pb.DBWorldtask, curTaskConf
}
for _, t := range userTask.TaskList {
if lastTaskId == t.TaskId{
if lastTaskId == t.TaskId {
preTaskFinished = true
}
}
@ -87,10 +87,10 @@ func (this *ModelWorldtask) finishTask(groupId, taskId int32, task *pb.DBWorldta
update["uid"] = task.Uid
wt := &pb.Worldtask{
TaskId: taskId,
TaskId: taskId,
TaskType: taskConf.Des,
}
task.TaskList = append(task.TaskList,wt)
task.TaskList = append(task.TaskList, wt)
task.LastTaskIds[groupId] = wt
update["taskList"] = task.TaskList
@ -102,7 +102,7 @@ func (this *ModelWorldtask) finishTask(groupId, taskId int32, task *pb.DBWorldta
if module, err := this.service.GetModule(comm.ModuleLinestory); err == nil {
if iLinestory, ok := module.(comm.ILinestory); ok {
if err := iLinestory.TaskFinishNotify(task.Uid, taskId, groupId); err != nil {
log.Error("世界任务完成通知支线剧情任务", log.Fields{"uid": task.Uid, "groupId": groupId, "taskId": taskId, "err": err.Error()})
log.Debug("世界任务完成通知支线剧情任务", log.Fields{"uid": task.Uid, "groupId": groupId, "taskId": taskId, "err": err.Error()})
}
}
}

View File

@ -107,6 +107,101 @@ func (x *PrivilegeGetListResp) GetData() []*DBPrivilege {
return nil
}
// 购买月卡
type PrivilegeBuyYuekaReq struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
CID string `protobuf:"bytes,1,opt,name=cID,proto3" json:"cID"`
}
func (x *PrivilegeBuyYuekaReq) Reset() {
*x = PrivilegeBuyYuekaReq{}
if protoimpl.UnsafeEnabled {
mi := &file_privilege_privilege_msg_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *PrivilegeBuyYuekaReq) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PrivilegeBuyYuekaReq) ProtoMessage() {}
func (x *PrivilegeBuyYuekaReq) ProtoReflect() protoreflect.Message {
mi := &file_privilege_privilege_msg_proto_msgTypes[2]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use PrivilegeBuyYuekaReq.ProtoReflect.Descriptor instead.
func (*PrivilegeBuyYuekaReq) Descriptor() ([]byte, []int) {
return file_privilege_privilege_msg_proto_rawDescGZIP(), []int{2}
}
func (x *PrivilegeBuyYuekaReq) GetCID() string {
if x != nil {
return x.CID
}
return ""
}
type PrivilegeBuyYuekaResp struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Data []*DBPrivilege `protobuf:"bytes,1,rep,name=data,proto3" json:"data"`
}
func (x *PrivilegeBuyYuekaResp) Reset() {
*x = PrivilegeBuyYuekaResp{}
if protoimpl.UnsafeEnabled {
mi := &file_privilege_privilege_msg_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *PrivilegeBuyYuekaResp) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PrivilegeBuyYuekaResp) ProtoMessage() {}
func (x *PrivilegeBuyYuekaResp) ProtoReflect() protoreflect.Message {
mi := &file_privilege_privilege_msg_proto_msgTypes[3]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use PrivilegeBuyYuekaResp.ProtoReflect.Descriptor instead.
func (*PrivilegeBuyYuekaResp) Descriptor() ([]byte, []int) {
return file_privilege_privilege_msg_proto_rawDescGZIP(), []int{3}
}
func (x *PrivilegeBuyYuekaResp) GetData() []*DBPrivilege {
if x != nil {
return x.Data
}
return nil
}
var File_privilege_privilege_msg_proto protoreflect.FileDescriptor
var file_privilege_privilege_msg_proto_rawDesc = []byte{
@ -118,8 +213,15 @@ var file_privilege_privilege_msg_proto_rawDesc = []byte{
0x74, 0x52, 0x65, 0x71, 0x22, 0x38, 0x0a, 0x14, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67,
0x65, 0x47, 0x65, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x20, 0x0a, 0x04,
0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x44, 0x42, 0x50,
0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x42, 0x06,
0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x28,
0x0a, 0x14, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x42, 0x75, 0x79, 0x59, 0x75,
0x65, 0x6b, 0x61, 0x52, 0x65, 0x71, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x49, 0x44, 0x18, 0x01, 0x20,
0x01, 0x28, 0x09, 0x52, 0x03, 0x63, 0x49, 0x44, 0x22, 0x39, 0x0a, 0x15, 0x50, 0x72, 0x69, 0x76,
0x69, 0x6c, 0x65, 0x67, 0x65, 0x42, 0x75, 0x79, 0x59, 0x75, 0x65, 0x6b, 0x61, 0x52, 0x65, 0x73,
0x70, 0x12, 0x20, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32,
0x0c, 0x2e, 0x44, 0x42, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x52, 0x04, 0x64,
0x61, 0x74, 0x61, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x33,
}
var (
@ -134,19 +236,22 @@ func file_privilege_privilege_msg_proto_rawDescGZIP() []byte {
return file_privilege_privilege_msg_proto_rawDescData
}
var file_privilege_privilege_msg_proto_msgTypes = make([]protoimpl.MessageInfo, 2)
var file_privilege_privilege_msg_proto_msgTypes = make([]protoimpl.MessageInfo, 4)
var file_privilege_privilege_msg_proto_goTypes = []interface{}{
(*PrivilegeGetListReq)(nil), // 0: PrivilegeGetListReq
(*PrivilegeGetListResp)(nil), // 1: PrivilegeGetListResp
(*DBPrivilege)(nil), // 2: DBPrivilege
(*PrivilegeGetListReq)(nil), // 0: PrivilegeGetListReq
(*PrivilegeGetListResp)(nil), // 1: PrivilegeGetListResp
(*PrivilegeBuyYuekaReq)(nil), // 2: PrivilegeBuyYuekaReq
(*PrivilegeBuyYuekaResp)(nil), // 3: PrivilegeBuyYuekaResp
(*DBPrivilege)(nil), // 4: DBPrivilege
}
var file_privilege_privilege_msg_proto_depIdxs = []int32{
2, // 0: PrivilegeGetListResp.data:type_name -> DBPrivilege
1, // [1:1] is the sub-list for method output_type
1, // [1:1] is the sub-list for method input_type
1, // [1:1] is the sub-list for extension type_name
1, // [1:1] is the sub-list for extension extendee
0, // [0:1] is the sub-list for field type_name
4, // 0: PrivilegeGetListResp.data:type_name -> DBPrivilege
4, // 1: PrivilegeBuyYuekaResp.data:type_name -> DBPrivilege
2, // [2:2] is the sub-list for method output_type
2, // [2:2] is the sub-list for method input_type
2, // [2:2] is the sub-list for extension type_name
2, // [2:2] is the sub-list for extension extendee
0, // [0:2] is the sub-list for field type_name
}
func init() { file_privilege_privilege_msg_proto_init() }
@ -180,6 +285,30 @@ func file_privilege_privilege_msg_proto_init() {
return nil
}
}
file_privilege_privilege_msg_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*PrivilegeBuyYuekaReq); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_privilege_privilege_msg_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*PrivilegeBuyYuekaResp); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
type x struct{}
out := protoimpl.TypeBuilder{
@ -187,7 +316,7 @@ func file_privilege_privilege_msg_proto_init() {
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_privilege_privilege_msg_proto_rawDesc,
NumEnums: 0,
NumMessages: 2,
NumMessages: 4,
NumExtensions: 0,
NumServices: 0,
},

View File

@ -18,6 +18,7 @@ type GameWorldBattleData struct {
LockSlots []int32
AssistTeam int32
EventList []int32
Playexp int32
}
const TypeId_GameWorldBattleData = 1096332216
@ -86,6 +87,7 @@ func (_v *GameWorldBattleData)Deserialize(_buf map[string]interface{}) (err erro
}
}
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["playexp"].(float64); !_ok_ { err = errors.New("playexp error"); return }; _v.Playexp = int32(_tempNum_) }
return
}