From 4bb8858cc5a923485101f716708db87da28c82c3 Mon Sep 17 00:00:00 2001 From: meixiongfeng <766881921@qq.com> Date: Tue, 14 Nov 2023 10:47:04 +0800 Subject: [PATCH 1/5] =?UTF-8?q?=E8=B5=84=E6=BA=90=E7=B1=BB=E5=9E=8B?= =?UTF-8?q?=E6=9E=9A=E4=B8=BE=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- comm/const.go | 5 +++++ modules/academy/api_receive.go | 2 +- modules/academy/api_teachingreceive.go | 2 +- modules/achieve/api_award.go | 2 +- modules/activity/api_getreward.go | 2 +- modules/addrecharge/api_receive.go | 2 +- modules/addrecharge/api_receiveall.go | 2 +- modules/arena/api_buy.go | 2 +- modules/arena/api_challengereward.go | 2 +- modules/arena/api_plotreward.go | 2 +- modules/atlas/api_atlasaward.go | 2 +- modules/caninerabbit/api_award.go | 2 +- modules/capturesheep/api_allweekreward.go | 2 +- modules/capturesheep/api_over.go | 2 +- modules/capturesheep/api_weekreward.go | 2 +- modules/caravan/api_buyorsell.go | 4 ++-- modules/caravan/api_getreward.go | 2 +- modules/caravan/module.go | 4 ++-- modules/catchbugs/api_award.go | 2 +- modules/combat/api_ask.go | 2 +- modules/combat/api_challengereceive.go | 2 +- modules/combat/api_drop.go | 2 +- modules/dailytask/api_receive.go | 2 +- modules/dcolor/api_award.go | 2 +- modules/dispatch/api_autoreceive.go | 2 +- modules/dispatch/api_notice.go | 2 +- modules/dispatch/api_receive.go | 2 +- modules/dispatch/api_week.go | 2 +- modules/dragon/api_train.go | 2 +- modules/egghunt/api_award.go | 2 +- modules/enchant/api_challengeover.go | 2 +- modules/entertainment/api_boxreward.go | 2 +- modules/entertainment/api_getreward.go | 2 +- modules/entertainment/room.go | 2 +- modules/equipment/api_sellI.go | 2 +- modules/equipment/module.go | 4 ++-- modules/friend/api_cross_getreward.go | 2 +- modules/friend/api_cross_zan.go | 2 +- modules/gourmet/api_activateatlas.go | 2 +- modules/gourmet/api_createfood.go | 2 +- modules/growtask/api_advreceive.go | 2 +- modules/growtask/api_receive.go | 2 +- modules/guildgve/api_challengefinish.go | 2 +- modules/guildgve/api_roulette.go | 2 +- modules/hero/api_drawCard.go | 2 +- modules/hero/api_peachreward.go | 2 +- modules/hero/api_strengthenUpStar.go | 2 +- modules/hero/api_talentreset.go | 2 +- modules/hero/model_hero.go | 4 ++-- modules/herotask/api_receive.go | 2 +- modules/horoscope/api_rest.go | 2 +- modules/hunting/api_challengeover.go | 2 +- modules/island/api_complete.go | 2 +- modules/island/api_receive.go | 2 +- modules/items/api_buyphysical.go | 2 +- modules/items/api_decompose.go | 2 +- modules/items/api_potionsynthesis.go | 2 +- modules/items/api_sellItem.go | 2 +- modules/items/api_sellinbulk.go | 2 +- modules/items/modelitems.go | 6 +++--- modules/items/module.go | 2 +- modules/jielong/api_reward.go | 2 +- modules/kftask/api_receive.go | 2 +- modules/library/api_getstoryreward.go | 2 +- modules/library/api_lvreward.go | 2 +- modules/linestory/api_receive.go | 2 +- modules/mail/api_getAttachment.go | 4 ++-- modules/mainline/api_booschallengeover.go | 2 +- modules/mainline/api_challengeover.go | 4 ++-- modules/mainline/api_levelpass.go | 2 +- modules/mainline/api_receiveaward.go | 2 +- modules/mainline/api_shopbuy.go | 2 +- modules/mainline/api_taskchaptereward.go | 2 +- modules/mainline/api_taskreceive.go | 2 +- modules/modeluserlog.go | 10 +++++++++- modules/modulebase.go | 4 ++-- modules/moonfantasy/api_receive.go | 4 ++-- modules/oldtimes/api_receive.go | 2 +- modules/pagoda/api_challengeover.go | 2 +- modules/pagoda/api_getReward.go | 2 +- modules/pagoda/api_racechallengeover.go | 2 +- modules/parkour/api_allweekreward.go | 2 +- modules/parkour/api_weekreward.go | 2 +- modules/parkour/module.go | 2 +- modules/pay/modelActivity.go | 4 ++-- modules/pay/modelDaily.go | 4 ++-- modules/pay/module.go | 4 ++-- modules/practice/api_getgymbuff.go | 2 +- modules/practice/api_npcbattklefinish.go | 2 +- modules/practice/api_receive.go | 2 +- modules/practice/api_unLock.go | 2 +- modules/privilege/api_buygift.go | 2 +- modules/privilege/module.go | 4 ++-- modules/pushgiftbag/module.go | 2 +- modules/questionnaire/api_answer.go | 2 +- modules/reputation/module.go | 2 +- modules/shop/api_buy.go | 2 +- modules/shopcenter/api_receive.go | 2 +- modules/smithy/api_atlasaward.go | 2 +- modules/smithy/api_forgeequip.go | 2 +- modules/smithy/api_receive.go | 2 +- modules/smithy/api_trade.go | 2 +- modules/smithy/module.go | 2 +- modules/sociaty/api_cross_activityreceive.go | 2 +- modules/sociaty/api_cross_buy.go | 2 +- modules/sociaty/api_cross_receive.go | 2 +- modules/sociaty/api_cross_sign.go | 2 +- modules/stonehenge/api_bookaward.go | 2 +- modules/stonehenge/api_enterlevel.go | 2 +- modules/stonehenge/api_event.go | 2 +- modules/stonehenge/api_finish.go | 2 +- modules/stonehenge/api_taskreceive.go | 2 +- modules/stonehenge/api_weekAward.go | 2 +- modules/storyline/api_complete.go | 2 +- modules/turntable/api_draw.go | 2 +- modules/uigame/api_latticefinish.go | 2 +- modules/uigame/api_latticegrid.go | 2 +- modules/uigame/api_latticereward.go | 2 +- modules/uigame/api_minerfinish.go | 2 +- modules/uigame/api_minergrid.go | 2 +- modules/uigame/api_puzzlegrid.go | 2 +- modules/uigame/api_puzzlereward.go | 2 +- modules/uigame/module.go | 6 +++--- modules/user/api_create.go | 2 +- modules/user/api_deposit.go | 2 +- modules/user/api_puzzleaward.go | 2 +- modules/user/model_user.go | 2 +- modules/venture/api_lvreward.go | 2 +- modules/venture/api_signreward.go | 2 +- modules/viking/api_challengeover.go | 4 ++-- modules/warorder/api_receive.go | 2 +- modules/weektask/api_activityreceive.go | 2 +- modules/weektask/api_receive.go | 2 +- modules/whackamole/api_award.go | 2 +- modules/wtask/api_accept.go | 2 +- modules/wtask/api_battlefinish.go | 2 +- modules/wtask/api_boxreceive.go | 2 +- modules/wtask/api_chapterreward.go | 2 +- modules/wtask/api_eventcomplete.go | 2 +- modules/wtask/api_exchange.go | 2 +- modules/wtask/api_finish.go | 2 +- 141 files changed, 170 insertions(+), 157 deletions(-) diff --git a/comm/const.go b/comm/const.go index 1a2f13251..030c100a4 100644 --- a/comm/const.go +++ b/comm/const.go @@ -1133,3 +1133,8 @@ const ( OpencondTypePagoda OpencondType = 5 //爬塔 OpencondTypeSociaty OpencondType = 6 //工会等级 ) + +const ( + GMResAddType int32 = 0 + GMResDelType int32 = 1 +) diff --git a/modules/academy/api_receive.go b/modules/academy/api_receive.go index 588f59ff8..e95575b9f 100644 --- a/modules/academy/api_receive.go +++ b/modules/academy/api_receive.go @@ -69,7 +69,7 @@ func (this *apiComp) Receive(session comm.IUserSession, req *pb.AcademyReceiveRe go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { this.module.ModuleBuried.TriggerBuried(session, comm.GetBuriedParam(comm.Rtype151, 1)) - this.module.WriteUserLog(session.GetUserId(), "AcademyReceiveReq", level.Award) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "AcademyReceiveReq", level.Award) }) } diff --git a/modules/academy/api_teachingreceive.go b/modules/academy/api_teachingreceive.go index c9962fb6a..c106790e6 100644 --- a/modules/academy/api_teachingreceive.go +++ b/modules/academy/api_teachingreceive.go @@ -67,7 +67,7 @@ func (this *apiComp) TeachingReceive(session comm.IUserSession, req *pb.AcademyT this.module.DispenseRes(session, level.Award, true) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "AcademyTeachingReceiveReq", level.Award) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "AcademyTeachingReceiveReq", level.Award) }) } session.SendMsg(string(this.module.GetType()), "teachingreceive", &pb.AcademyTeachingReceiveResp{Issucc: true}) diff --git a/modules/achieve/api_award.go b/modules/achieve/api_award.go index 81f0eaa7c..9dfd39e8d 100644 --- a/modules/achieve/api_award.go +++ b/modules/achieve/api_award.go @@ -81,7 +81,7 @@ func (this *apiComp) Award(session comm.IUserSession, req *pb.AchieveAwardReq) ( session.SendMsg(string(this.module.GetType()), "award", &pb.AchieveAwardResp{Id: req.Id, Award: atno}) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "AchieveAwardReq", conf.TaskReward) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "AchieveAwardReq", conf.TaskReward) }) return } diff --git a/modules/activity/api_getreward.go b/modules/activity/api_getreward.go index 3580181cf..1d3e62a86 100644 --- a/modules/activity/api_getreward.go +++ b/modules/activity/api_getreward.go @@ -98,7 +98,7 @@ func (this *apiComp) GetReward(session comm.IUserSession, req *pb.ActivityGetRew }) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "ActivityGetRewardReq", reward) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "ActivityGetRewardReq", reward) }) return } diff --git a/modules/addrecharge/api_receive.go b/modules/addrecharge/api_receive.go index 5ff97e3e5..f04929340 100644 --- a/modules/addrecharge/api_receive.go +++ b/modules/addrecharge/api_receive.go @@ -77,7 +77,7 @@ func (this *apiComp) Receive(session comm.IUserSession, req *pb.AddRechargeRecei session.SendMsg(string(this.module.GetType()), "receive", &pb.AddRechargeReceiveResp{Id: req.Id, Award: award}) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "AddRechargeReceiveReq", award) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "AddRechargeReceiveReq", award) }) return } diff --git a/modules/addrecharge/api_receiveall.go b/modules/addrecharge/api_receiveall.go index dbe1b318a..bed907c78 100644 --- a/modules/addrecharge/api_receiveall.go +++ b/modules/addrecharge/api_receiveall.go @@ -79,7 +79,7 @@ func (this *apiComp) ReceiveAll(session comm.IUserSession, req *pb.AddRechargeRe }) session.SendMsg(string(this.module.GetType()), "receiveall", &pb.AddRechargeReceiveAllResp{Record: info.Record, Award: award}) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "AddRechargeReceiveAllReq", award) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "AddRechargeReceiveAllReq", award) }) return } diff --git a/modules/arena/api_buy.go b/modules/arena/api_buy.go index a0fca42a6..80ede904e 100644 --- a/modules/arena/api_buy.go +++ b/modules/arena/api_buy.go @@ -99,7 +99,7 @@ func (this *apiComp) Buy(session comm.IUserSession, req *pb.ArenaBuyReq) (errdat session.SendMsg(string(this.module.GetType()), "buy", &pb.MoonfantasyBuyResp{Issucc: true, BattleNum: info.Buynum}) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "MoonfantasyBuyReq", []*cfg.Gameatn{{A: ticketitem.A, T: ticketitem.T, N: req.BuyNum}}) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "MoonfantasyBuyReq", []*cfg.Gameatn{{A: ticketitem.A, T: ticketitem.T, N: req.BuyNum}}) }) return } diff --git a/modules/arena/api_challengereward.go b/modules/arena/api_challengereward.go index 8f48fdb45..2bd0ca57b 100644 --- a/modules/arena/api_challengereward.go +++ b/modules/arena/api_challengereward.go @@ -289,7 +289,7 @@ func (this *apiComp) ChallengeReward(session comm.IUserSession, req *pb.ArenaCha go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { this.module.ModuleBuried.TriggerBuried(session, tasks...) if bReward { - this.module.WriteUserLog(session.GetUserId(), "ArenaChallengeRewardReq", reward.WinReward) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "ArenaChallengeRewardReq", reward.WinReward) } }) diff --git a/modules/arena/api_plotreward.go b/modules/arena/api_plotreward.go index 320a7c123..5d3a834cf 100644 --- a/modules/arena/api_plotreward.go +++ b/modules/arena/api_plotreward.go @@ -98,7 +98,7 @@ func (this *apiComp) PlotReward(session comm.IUserSession, req *pb.ArenaPlotRewa }) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "ArenaPlotRewardReq", atno) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "ArenaPlotRewardReq", atno) }) return } diff --git a/modules/atlas/api_atlasaward.go b/modules/atlas/api_atlasaward.go index e3f6bd444..ba8c4949f 100644 --- a/modules/atlas/api_atlasaward.go +++ b/modules/atlas/api_atlasaward.go @@ -73,7 +73,7 @@ func (this *apiComp) Award(session comm.IUserSession, req *pb.AtlasAwardReq) (er Res: respRes, }) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "AtlasAwardReq", respRes) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "AtlasAwardReq", respRes) }) return } diff --git a/modules/caninerabbit/api_award.go b/modules/caninerabbit/api_award.go index 01dd7781c..43ae6a3ac 100644 --- a/modules/caninerabbit/api_award.go +++ b/modules/caninerabbit/api_award.go @@ -63,7 +63,7 @@ func (this *apiComp) Award(session comm.IUserSession, req *pb.CanineRabbitAwardR session.SendMsg(string(this.module.GetType()), "award", &pb.CanineRabbitAwardResp{Type: req.Type, Awardmap: info.Award, Award: atno}) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "CanineRabbitAwardReq", res) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "CanineRabbitAwardReq", res) }) return } diff --git a/modules/capturesheep/api_allweekreward.go b/modules/capturesheep/api_allweekreward.go index 00922c0fa..18219d428 100644 --- a/modules/capturesheep/api_allweekreward.go +++ b/modules/capturesheep/api_allweekreward.go @@ -71,7 +71,7 @@ func (this *apiComp) AllWeekReward(session comm.IUserSession, req *pb.Captureshe } session.SendMsg(string(this.module.GetType()), "allweekreward", &pb.CapturesheepAllWeekRewardResp{Weekreward: info.Weekreward, Award: award}) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "CapturesheepAllWeekRewardReq", award) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "CapturesheepAllWeekRewardReq", award) }) return } diff --git a/modules/capturesheep/api_over.go b/modules/capturesheep/api_over.go index b9c73a72b..10584f5db 100644 --- a/modules/capturesheep/api_over.go +++ b/modules/capturesheep/api_over.go @@ -134,7 +134,7 @@ func (this *apiComp) Over(session comm.IUserSession, req *pb.CapturesheepOverReq }) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "CapturesheepOverReq", award) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "CapturesheepOverReq", award) }) return } diff --git a/modules/capturesheep/api_weekreward.go b/modules/capturesheep/api_weekreward.go index b6b13a4ff..799287728 100644 --- a/modules/capturesheep/api_weekreward.go +++ b/modules/capturesheep/api_weekreward.go @@ -74,7 +74,7 @@ func (this *apiComp) WeekReward(session comm.IUserSession, req *pb.CapturesheepW session.SendMsg(string(this.module.GetType()), "weekreward", &pb.CapturesheepWeekRewardResp{Id: req.Id, Award: award}) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "CapturesheepWeekRewardReq", award) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "CapturesheepWeekRewardReq", award) }) return } diff --git a/modules/caravan/api_buyorsell.go b/modules/caravan/api_buyorsell.go index 5d5bc8efb..198f5f052 100644 --- a/modules/caravan/api_buyorsell.go +++ b/modules/caravan/api_buyorsell.go @@ -116,7 +116,7 @@ func (this *apiComp) BuyOrSell(session comm.IUserSession, req *pb.CaravanBuyOrSe this.module.Errorf("获得虚拟币失败:%v", errdata) } go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "troll sell", addRes) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "troll sell", addRes) }) this.module.ArrayBag(caravan) @@ -232,7 +232,7 @@ func (this *apiComp) BuyOrSell(session comm.IUserSession, req *pb.CaravanBuyOrSe this.module.Errorf("获得虚拟币失败:%v", errdata) } go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "troll buy", []*cfg.Gameatn{{ + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "troll buy", []*cfg.Gameatn{{ A: "attr", T: "merchantmoney", N: addScore, diff --git a/modules/caravan/api_getreward.go b/modules/caravan/api_getreward.go index 2403abad2..74a8092ba 100644 --- a/modules/caravan/api_getreward.go +++ b/modules/caravan/api_getreward.go @@ -99,7 +99,7 @@ func (this *apiComp) GetReward(session comm.IUserSession, req *pb.CaravanGetRewa }) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "CaravanGetRewardReq", atno) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "CaravanGetRewardReq", atno) }) return } diff --git a/modules/caravan/module.go b/modules/caravan/module.go index c0424556d..9990df18f 100644 --- a/modules/caravan/module.go +++ b/modules/caravan/module.go @@ -222,7 +222,7 @@ func (this *Caravan) InitCaravanTicket(session comm.IUserSession, conf *cfg.Game errdata = this.DispenseRes(session, res, true) // 推送门票和虚拟币资源 go this.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.WriteUserLog(session.GetUserId(), "InitCaravanTicket", res) + this.WriteUserLog(session.GetUserId(), 0, "InitCaravanTicket", res) }) return } @@ -387,7 +387,7 @@ func (this *Caravan) TaskComplete(session comm.IUserSession, taskid ...int32) { } session.SendMsg(string(this.GetType()), "taskcomplete", resp) go this.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.WriteUserLog(session.GetUserId(), "TaskComplete", conf.Reword) + this.WriteUserLog(session.GetUserId(), 0, "TaskComplete", conf.Reword) }) } } diff --git a/modules/catchbugs/api_award.go b/modules/catchbugs/api_award.go index 493550e23..e4a130a92 100644 --- a/modules/catchbugs/api_award.go +++ b/modules/catchbugs/api_award.go @@ -54,7 +54,7 @@ func (this *apiComp) Award(session comm.IUserSession, req *pb.CatchbugsAwardReq) session.SendMsg(string(this.module.GetType()), "award", &pb.CatchbugsAwardResp{Awardmap: info.Awards, Award: atno}) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "CatchbugsAwardReq", atno) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "CatchbugsAwardReq", atno) }) return } diff --git a/modules/combat/api_ask.go b/modules/combat/api_ask.go index f58f3ce29..63a3eb01b 100644 --- a/modules/combat/api_ask.go +++ b/modules/combat/api_ask.go @@ -153,7 +153,7 @@ func (this *apiComp) Ask(session comm.IUserSession, req *pb.CombatAskReq) (errda session.SendMsg(string(this.module.GetType()), "ask", &pb.CombatAskResp{Level: pitem}) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "CombatAskReq", reward) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "CombatAskReq", reward) }) return } diff --git a/modules/combat/api_challengereceive.go b/modules/combat/api_challengereceive.go index a249ad4dc..da5505f5d 100644 --- a/modules/combat/api_challengereceive.go +++ b/modules/combat/api_challengereceive.go @@ -101,7 +101,7 @@ func (this *apiComp) ChallengeReceive(session comm.IUserSession, req *pb.CombatC } go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "CombatChallengeReceiveReq", atns) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "CombatChallengeReceiveReq", atns) }) } session.SendMsg(string(this.module.GetType()), "challengereceive", &pb.CombatChallengeReceiveResp{Level: req.Level, Manster: req.Manster, Atns: atns}) diff --git a/modules/combat/api_drop.go b/modules/combat/api_drop.go index c8e584e96..335e7a92f 100644 --- a/modules/combat/api_drop.go +++ b/modules/combat/api_drop.go @@ -112,7 +112,7 @@ func (this *apiComp) Drop(session comm.IUserSession, req *pb.CombatDropReq) (err session.SendMsg(string(this.module.GetType()), "drop", &pb.CombatDropResp{Level: req.Level, Atns: atns}) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "CombatDropReq", atns) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "CombatDropReq", atns) }) return } diff --git a/modules/dailytask/api_receive.go b/modules/dailytask/api_receive.go index 5abff5d9a..863bf9bac 100644 --- a/modules/dailytask/api_receive.go +++ b/modules/dailytask/api_receive.go @@ -58,7 +58,7 @@ func (this *apiComp) Receive(session comm.IUserSession, req *pb.DailytaskReceive session.SendMsg(string(this.module.GetType()), "receive", &pb.DailytaskReceiveResp{Award: atno}) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "DailytaskReceiveReq", atno) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "DailytaskReceiveReq", atno) }) return } diff --git a/modules/dcolor/api_award.go b/modules/dcolor/api_award.go index 05cf45609..6cca636cb 100644 --- a/modules/dcolor/api_award.go +++ b/modules/dcolor/api_award.go @@ -81,7 +81,7 @@ func (this *apiComp) Award(session comm.IUserSession, req *pb.DColorAwardReq) (e session.SendMsg(string(this.module.GetType()), "award", &pb.DColorAwardResp{Atype: req.Atype, Award: atno, Awardmap: awards}) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "DColorAwardReq", atno) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "DColorAwardReq", atno) }) return } diff --git a/modules/dispatch/api_autoreceive.go b/modules/dispatch/api_autoreceive.go index 395ef5c9e..9576fad4f 100644 --- a/modules/dispatch/api_autoreceive.go +++ b/modules/dispatch/api_autoreceive.go @@ -71,7 +71,7 @@ func (a *apiComp) Autoreceive(session comm.IUserSession, req *pb.DispatchAutoRec session.SendMsg(string(a.module.GetType()), "autoreceive", rsp) go a.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - a.module.WriteUserLog(session.GetUserId(), "DispatchAutoReceiveReq", res) + a.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "DispatchAutoReceiveReq", res) }) return } diff --git a/modules/dispatch/api_notice.go b/modules/dispatch/api_notice.go index 3855321d5..aed4b2e3c 100644 --- a/modules/dispatch/api_notice.go +++ b/modules/dispatch/api_notice.go @@ -69,7 +69,7 @@ func (a *apiComp) Notice(session comm.IUserSession, req *pb.DispatchNoticeReq) ( a.module.DispenseRes(session, []*cfg.Gameatn{atn}, true) go a.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - a.module.WriteUserLog(session.GetUserId(), "恢复门票", atn) + a.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "恢复门票", atn) }) } } diff --git a/modules/dispatch/api_receive.go b/modules/dispatch/api_receive.go index f3a6a30ae..a4356b4c7 100644 --- a/modules/dispatch/api_receive.go +++ b/modules/dispatch/api_receive.go @@ -94,7 +94,7 @@ func (a *apiComp) Receive(session comm.IUserSession, req *pb.DispatchReceiveReq) session.SendMsg(string(a.module.GetType()), "receive", rsp) go a.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - a.module.WriteUserLog(session.GetUserId(), "DispatchReceiveReq", res) + a.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "DispatchReceiveReq", res) }) return } diff --git a/modules/dispatch/api_week.go b/modules/dispatch/api_week.go index 6db4b17c2..fb8e0deb3 100644 --- a/modules/dispatch/api_week.go +++ b/modules/dispatch/api_week.go @@ -59,7 +59,7 @@ func (a *apiComp) Weekrecive(session comm.IUserSession, req *pb.DispatchWeekReci if len(res) > 0 { a.module.DispenseRes(session, res, true) go a.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - a.module.WriteUserLog(session.GetUserId(), "DispatchWeekReciveReq", res) + a.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "DispatchWeekReciveReq", res) }) } session.SendMsg(string(a.module.GetType()), "weekrecive", rsp) diff --git a/modules/dragon/api_train.go b/modules/dragon/api_train.go index 94e259bec..de68f9958 100644 --- a/modules/dragon/api_train.go +++ b/modules/dragon/api_train.go @@ -170,7 +170,7 @@ func (this *apiComp) Train(session comm.IUserSession, req *pb.DragonTrainReq) (e if curLv > preLv { // 升级后统计任务 go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { this.module.ModuleBuried.TriggerBuried(session, comm.GetBuriedParam(comm.Rtype235, dragon.Lv, utils.ToInt32(dragon.Dragonid))) - this.module.WriteUserLog(session.GetUserId(), "DragonTrainReq", atno) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "DragonTrainReq", atno) }) } return diff --git a/modules/egghunt/api_award.go b/modules/egghunt/api_award.go index 512332e5e..c3419a267 100644 --- a/modules/egghunt/api_award.go +++ b/modules/egghunt/api_award.go @@ -58,7 +58,7 @@ func (this *apiComp) Award(session comm.IUserSession, req *pb.EgghuntAwardReq) ( session.SendMsg(string(this.module.GetType()), "award", &pb.EgghuntAwardResp{Id: req.Id, Award: atno}) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "EgghuntAwardReq", atno) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "EgghuntAwardReq", atno) }) return } diff --git a/modules/enchant/api_challengeover.go b/modules/enchant/api_challengeover.go index 727d54ebc..17b8a2057 100644 --- a/modules/enchant/api_challengeover.go +++ b/modules/enchant/api_challengeover.go @@ -100,7 +100,7 @@ func (this *apiComp) ChallengeOver(session comm.IUserSession, req *pb.EnchantCha return } go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "EnchantChallengeOverReq", res) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "EnchantChallengeOverReq", res) }) } diff --git a/modules/entertainment/api_boxreward.go b/modules/entertainment/api_boxreward.go index 173b1a11e..8e27d2bc2 100644 --- a/modules/entertainment/api_boxreward.go +++ b/modules/entertainment/api_boxreward.go @@ -88,7 +88,7 @@ func (this *apiComp) BoxReward(session comm.IUserSession, req *pb.EntertainBoxRe }) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "EntertainBoxRewardReq", atno) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "EntertainBoxRewardReq", atno) }) return } diff --git a/modules/entertainment/api_getreward.go b/modules/entertainment/api_getreward.go index f6ac5ddf8..1b7e8fa20 100644 --- a/modules/entertainment/api_getreward.go +++ b/modules/entertainment/api_getreward.go @@ -66,7 +66,7 @@ func (this *apiComp) Reward(session comm.IUserSession, req *pb.EntertainRewardRe }) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "EntertainRewardReq", atno) + this.module.WriteUserLog(session.GetUserId(),0, "EntertainRewardReq", atno) }) return } diff --git a/modules/entertainment/room.go b/modules/entertainment/room.go index 463a26f16..b16f13023 100644 --- a/modules/entertainment/room.go +++ b/modules/entertainment/room.go @@ -582,7 +582,7 @@ func (this *Room) GameOver() (errdata *pb.ErrorData) { return } go this.module.AsynHandleSession(this.szSession[winindex], func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "xxlGame", atno) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "xxlGame", atno) }) this.szSession[winindex].Push() } diff --git a/modules/equipment/api_sellI.go b/modules/equipment/api_sellI.go index 25328c012..0ea322664 100644 --- a/modules/equipment/api_sellI.go +++ b/modules/equipment/api_sellI.go @@ -110,7 +110,7 @@ func (this *apiComp) Sell(session comm.IUserSession, req *pb.EquipmentSellReq) ( } session.SendMsg(string(this.module.GetType()), "sell", &pb.EquipmentSellResp{IsSucc: true, Reward: reward}) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "EquipmentSellReq", reward) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "EquipmentSellReq", reward) }) return } diff --git a/modules/equipment/module.go b/modules/equipment/module.go index 5dd3d3d8e..4e87e9332 100644 --- a/modules/equipment/module.go +++ b/modules/equipment/module.go @@ -418,7 +418,7 @@ func (this *Equipment) SellEquipments(session comm.IUserSession, equs []string) } go func() { - this.WriteUserLog(session.GetUserId(), "SellEquipments", atno) + this.WriteUserLog(session.GetUserId(), 0, "SellEquipments", atno) }() return } @@ -515,7 +515,7 @@ func (this *Equipment) RecycleEquipments(session comm.IUserSession, equs []strin return } go func() { - this.WriteUserLog(session.GetUserId(), "RecycleEquipments", atno) + this.WriteUserLog(session.GetUserId(), 0, "RecycleEquipments", atno) }() return } diff --git a/modules/friend/api_cross_getreward.go b/modules/friend/api_cross_getreward.go index 460fa3a31..9cbebd80c 100644 --- a/modules/friend/api_cross_getreward.go +++ b/modules/friend/api_cross_getreward.go @@ -61,7 +61,7 @@ func (this *apiComp) Getreward(session comm.IUserSession, req *pb.FriendGetrewar session.SendMsg(string(this.module.GetType()), "getreward", rsp) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "FriendGetrewardReq", globalConf.FriendPeize) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "FriendGetrewardReq", globalConf.FriendPeize) }) return } diff --git a/modules/friend/api_cross_zan.go b/modules/friend/api_cross_zan.go index 69eb240c0..b9e1e45b4 100644 --- a/modules/friend/api_cross_zan.go +++ b/modules/friend/api_cross_zan.go @@ -133,7 +133,7 @@ func (this *apiComp) Zan(session comm.IUserSession, req *pb.FriendZanReq) (errda // 赠送X次友情点 go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { this.module.ModuleBuried.TriggerBuried(session, comm.GetBuriedParam(comm.Rtype11, 1)) - this.module.WriteUserLog(session.GetUserId(), "FriendGetrewardReq", res) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "FriendGetrewardReq", res) }) return } diff --git a/modules/gourmet/api_activateatlas.go b/modules/gourmet/api_activateatlas.go index 2d695cc89..2861feb2b 100644 --- a/modules/gourmet/api_activateatlas.go +++ b/modules/gourmet/api_activateatlas.go @@ -62,7 +62,7 @@ func (this *apiComp) ActivateAtlas(session comm.IUserSession, req *pb.GourmetAct }) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "GourmetActivateAtlasReq", conf.Unlockreward) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "GourmetActivateAtlasReq", conf.Unlockreward) }) return } diff --git a/modules/gourmet/api_createfood.go b/modules/gourmet/api_createfood.go index a1f8948e6..8f5ec7efd 100644 --- a/modules/gourmet/api_createfood.go +++ b/modules/gourmet/api_createfood.go @@ -100,7 +100,7 @@ func (this *apiComp) CreateFood(session comm.IUserSession, req *pb.GourmetCreate }) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { this.module.ModuleBuried.TriggerBuried(session, comm.GetBuriedParam(comm.Rtype150, 1)) - this.module.WriteUserLog(session.GetUserId(), "GourmetCreateFoodReq", atn) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "GourmetCreateFoodReq", atn) }) return } diff --git a/modules/growtask/api_advreceive.go b/modules/growtask/api_advreceive.go index 06b47697f..243b2d9ef 100644 --- a/modules/growtask/api_advreceive.go +++ b/modules/growtask/api_advreceive.go @@ -116,7 +116,7 @@ func (this *apiComp) Advreceive(session comm.IUserSession, req *pb.GrowtaskAdvRe }) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "GrowtaskAdvReceiveReq", atno) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "GrowtaskAdvReceiveReq", atno) }) return } diff --git a/modules/growtask/api_receive.go b/modules/growtask/api_receive.go index 47e2a572c..1d81c8313 100644 --- a/modules/growtask/api_receive.go +++ b/modules/growtask/api_receive.go @@ -77,7 +77,7 @@ func (this *apiComp) Receive(session comm.IUserSession, req *pb.GrowtaskReceiveR }) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "GrowtaskReceiveReq", reward) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "GrowtaskReceiveReq", reward) }) return } diff --git a/modules/guildgve/api_challengefinish.go b/modules/guildgve/api_challengefinish.go index ce77c8387..4cdf48e8c 100644 --- a/modules/guildgve/api_challengefinish.go +++ b/modules/guildgve/api_challengefinish.go @@ -206,7 +206,7 @@ func (this *apiComp) ChallengeFinish(session comm.IUserSession, req *pb.GuildGve Boosticket: member.Boosticket, }) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "GuildGveChallengeFinishReq", award) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "GuildGveChallengeFinishReq", award) }) return } diff --git a/modules/guildgve/api_roulette.go b/modules/guildgve/api_roulette.go index d98613851..a49b87db5 100644 --- a/modules/guildgve/api_roulette.go +++ b/modules/guildgve/api_roulette.go @@ -73,7 +73,7 @@ func (this *apiComp) Roulette(session comm.IUserSession, req *pb.GuildGveRoulett session.SendMsg(string(this.module.GetType()), "roulette", &pb.GuildGveRouletteResp{Cid: confs[index].Id, Award: award}) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "GuildGveRouletteReq", confs[index].Reward) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "GuildGveRouletteReq", confs[index].Reward) }) return } diff --git a/modules/hero/api_drawCard.go b/modules/hero/api_drawCard.go index 452c839ad..bc136502c 100644 --- a/modules/hero/api_drawCard.go +++ b/modules/hero/api_drawCard.go @@ -372,7 +372,7 @@ func (this *apiComp) DrawCard(session comm.IUserSession, req *pb.HeroDrawCardReq this.module.SendTaskMsg(session, szStar, req.DrawCount, req.DrawType) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "HeroDrawCardReq", atno) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "HeroDrawCardReq", atno) }) return } diff --git a/modules/hero/api_peachreward.go b/modules/hero/api_peachreward.go index 3292a1c0c..c67e875fa 100644 --- a/modules/hero/api_peachreward.go +++ b/modules/hero/api_peachreward.go @@ -100,7 +100,7 @@ func (this *apiComp) PeachReward(session comm.IUserSession, req *pb.HeroPeachRew session.SendMsg(string(this.module.GetType()), HeroPeachRewardReq, rsp) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "HeroPeachRewardReq", reward) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "HeroPeachRewardReq", reward) }) return } diff --git a/modules/hero/api_strengthenUpStar.go b/modules/hero/api_strengthenUpStar.go index a98d9d70f..1d953c085 100644 --- a/modules/hero/api_strengthenUpStar.go +++ b/modules/hero/api_strengthenUpStar.go @@ -117,7 +117,7 @@ func (this *apiComp) StrengthenUpStar(session comm.IUserSession, req *pb.HeroStr go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { this.module.ModuleBuried.TriggerBuried(session, tasks...) if len(starConf.Starup) > 0 { - this.module.WriteUserLog(session.GetUserId(), "HeroStrengthenUpStarReq", starConf.Starup) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "HeroStrengthenUpStarReq", starConf.Starup) } }) return diff --git a/modules/hero/api_talentreset.go b/modules/hero/api_talentreset.go index 2fa921804..4e774dc74 100644 --- a/modules/hero/api_talentreset.go +++ b/modules/hero/api_talentreset.go @@ -73,7 +73,7 @@ func (this *apiComp) TalentReset(session comm.IUserSession, req *pb.HeroTalentRe this.module.Errorf("DispenseRes err,uid:%s,item:%v", session.GetUserId(), res) } // 返还升级的天赋点数 go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "HeroTalentResetReq", res) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "HeroTalentResetReq", res) }) } diff --git a/modules/hero/model_hero.go b/modules/hero/model_hero.go index a1244a08c..d6b72f534 100644 --- a/modules/hero/model_hero.go +++ b/modules/hero/model_hero.go @@ -868,7 +868,7 @@ func (this *ModelHero) createHero(session comm.IUserSession, heroCfgId string, c if len(res) > 0 { // 资源统一发放 this.module.DispenseRes(session, res, true) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "create hero", res) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "create hero", res) }) } return @@ -973,7 +973,7 @@ func (this *ModelHero) GetDrawCardReward(session comm.IUserSession, szCards []st rsp = append(rsp, &pb.AtnoData{Atno: atno}) } go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "GetDrawCardReward", rsp) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "GetDrawCardReward", rsp) }) return } diff --git a/modules/herotask/api_receive.go b/modules/herotask/api_receive.go index 84344f220..3fb432623 100644 --- a/modules/herotask/api_receive.go +++ b/modules/herotask/api_receive.go @@ -108,7 +108,7 @@ func (this *apiComp) Receive(session comm.IUserSession, req *pb.HeroTaskReceiveR } session.SendMsg(string(this.module.GetType()), "receive", &pb.HeroTaskReceiveResp{Hero: req.Hero, Stage: req.Stage, Award: award}) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "HeroTaskReceiveReq", award) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "HeroTaskReceiveReq", award) }) return diff --git a/modules/horoscope/api_rest.go b/modules/horoscope/api_rest.go index fbb9f4215..6ab8f74e9 100644 --- a/modules/horoscope/api_rest.go +++ b/modules/horoscope/api_rest.go @@ -71,7 +71,7 @@ func (this *apiComp) Reset(session comm.IUserSession, req *pb.HoroscopeResetReq) } session.SendMsg(string(this.module.GetType()), "reset", &pb.HoroscopeResetResp{Issucc: true, Info: info, Award: consume}) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "HoroscopeResetReq", res) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "HoroscopeResetReq", res) }) return diff --git a/modules/hunting/api_challengeover.go b/modules/hunting/api_challengeover.go index 879deb9f7..41ac48e01 100644 --- a/modules/hunting/api_challengeover.go +++ b/modules/hunting/api_challengeover.go @@ -204,7 +204,7 @@ func (this *apiComp) ChallengeOver(session comm.IUserSession, req *pb.HuntingCha tasks = append(tasks, comm.GetBuriedParam(comm.Rtype200, 1)) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { this.module.ModuleBuried.TriggerBuried(session, tasks...) - this.module.WriteUserLog(session.GetUserId(), "HuntingChallengeOverReq", szAtno) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "HuntingChallengeOverReq", szAtno) }) return } diff --git a/modules/island/api_complete.go b/modules/island/api_complete.go index 8842c8fa4..b52da4c3d 100644 --- a/modules/island/api_complete.go +++ b/modules/island/api_complete.go @@ -93,7 +93,7 @@ func (this *apiComp) Complete(session comm.IUserSession, req *pb.IsLandCompleteR session.SendMsg(string(this.module.GetType()), "complete", &pb.IsLandCompleteResp{Level: req.Level, Award: award}) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "IsLandCompleteReq", award) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "IsLandCompleteReq", award) }) return } diff --git a/modules/island/api_receive.go b/modules/island/api_receive.go index 1f57c1ae8..64d751c53 100644 --- a/modules/island/api_receive.go +++ b/modules/island/api_receive.go @@ -70,7 +70,7 @@ func (this *apiComp) Receive(session comm.IUserSession, req *pb.IsLandReceiveReq session.SendMsg(string(this.module.GetType()), "receive", &pb.IsLandReceiveResp{Info: info, Award: award}) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "IsLandReceiveReq", award) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "IsLandReceiveReq", award) }) return } diff --git a/modules/items/api_buyphysical.go b/modules/items/api_buyphysical.go index 9b47daebf..94c2d0562 100644 --- a/modules/items/api_buyphysical.go +++ b/modules/items/api_buyphysical.go @@ -109,7 +109,7 @@ func (this *apiComp) BuyPhysical(session comm.IUserSession, req *pb.ItemsBuyPhys }) session.SendMsg(string(this.module.GetType()), "buyphysical", &pb.ItemsBuyPhysicalResp{Issucc: true, PhysicalBuyNum: user.Physicalbuynum, Asets: atno}) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "ItemsBuyPhysicalReq", atno) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "ItemsBuyPhysicalReq", atno) }) return } diff --git a/modules/items/api_decompose.go b/modules/items/api_decompose.go index 52cee4667..b9572686f 100644 --- a/modules/items/api_decompose.go +++ b/modules/items/api_decompose.go @@ -92,7 +92,7 @@ func (this *apiComp) Decompose(session comm.IUserSession, req *pb.ItemsDecompose session.SendMsg(string(this.module.GetType()), "decompose", &pb.ItemsDecomposeResp{GridId: req.GridId, Amount: req.Amount, Issucc: true, Asets: atno}) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "ItemsDecomposeReq", atno) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "ItemsDecomposeReq", atno) }) return } diff --git a/modules/items/api_potionsynthesis.go b/modules/items/api_potionsynthesis.go index 7679fc342..e55975bc5 100644 --- a/modules/items/api_potionsynthesis.go +++ b/modules/items/api_potionsynthesis.go @@ -71,7 +71,7 @@ func (this *apiComp) PotionSynthesis(session comm.IUserSession, req *pb.ItemsPot session.SendMsg(string(this.module.GetType()), "potionsynthesis", &pb.ItemsPotionSynthesisResp{Succ: true, Id: req.Id, Num: req.Num}) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "ItemsPotionSynthesisReq", give) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "ItemsPotionSynthesisReq", give) }) return diff --git a/modules/items/api_sellItem.go b/modules/items/api_sellItem.go index aa1d75553..bd75096bb 100644 --- a/modules/items/api_sellItem.go +++ b/modules/items/api_sellItem.go @@ -73,7 +73,7 @@ func (this *apiComp) SellItem(session comm.IUserSession, req *pb.ItemsSellItemRe } session.SendMsg(string(this.module.GetType()), "sellitem", &pb.ItemsSellItemResp{GridId: req.GridId, Amount: req.Amount, Issucc: true, Asets: atno}) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "ItemsSellItemReq", atno) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "ItemsSellItemReq", atno) }) return } diff --git a/modules/items/api_sellinbulk.go b/modules/items/api_sellinbulk.go index 5189521ce..906e394f4 100644 --- a/modules/items/api_sellinbulk.go +++ b/modules/items/api_sellinbulk.go @@ -88,7 +88,7 @@ func (this *apiComp) Sellinbulk(session comm.IUserSession, req *pb.ItemsSellinbu session.SendMsg(string(this.module.GetType()), "sellitem", &pb.ItemsSellinbulkResp{Grids: req.Grids, Amount: req.Amount, Issucc: issucc}) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "ItemsSellinbulkReq", sale) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "ItemsSellinbulkReq", sale) }) return } diff --git a/modules/items/modelitems.go b/modules/items/modelitems.go index 07fb7e943..fd1c20e75 100644 --- a/modules/items/modelitems.go +++ b/modules/items/modelitems.go @@ -546,7 +546,7 @@ func (this *ModelItemsComp) buyTicket(session comm.IUserSession, buy int32) (inf }) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "buyTicket", res) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "buyTicket", res) }) return } @@ -604,7 +604,7 @@ func (this *ModelItemsComp) recoverTicket(session comm.IUserSession) (errdata *p this.module.DispenseRes(session, []*cfg.Gameatn{{A: ticketitem.A, T: ticketitem.T, N: ticketNum}}, true) info.Recovertimeunifiedticket = time.Unix(info.Recovertimeunifiedticket, 0).Add(time.Duration(ticketNum) * time.Minute).Unix() go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "recoverTicket", []*cfg.Gameatn{{A: ticketitem.A, T: ticketitem.T, N: ticketNum}}) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "recoverTicket", []*cfg.Gameatn{{A: ticketitem.A, T: ticketitem.T, N: ticketNum}}) }) } } @@ -829,7 +829,7 @@ func (this *ModelItemsComp) useitem(session comm.IUserSession, gid string, amoun } go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "useitem", atno) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "useitem", atno) }) return } diff --git a/modules/items/module.go b/modules/items/module.go index 057451d6e..621989efd 100644 --- a/modules/items/module.go +++ b/modules/items/module.go @@ -365,7 +365,7 @@ func (this *Items) SellItem(session comm.IUserSession, items map[string]int32, b this.itemsChangePush(session, change) //推送道具背包变化 } go this.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.WriteUserLog(session.GetUserId(), "SellItem", atno) + this.WriteUserLog(session.GetUserId(), 0, "SellItem", atno) }) return } diff --git a/modules/jielong/api_reward.go b/modules/jielong/api_reward.go index c456987cb..2d239a0aa 100644 --- a/modules/jielong/api_reward.go +++ b/modules/jielong/api_reward.go @@ -92,7 +92,7 @@ func (this *apiComp) Reward(session comm.IUserSession, req *pb.JielongRewardReq) }) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "JielongRewardReq", atno) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "JielongRewardReq", atno) }) return } diff --git a/modules/kftask/api_receive.go b/modules/kftask/api_receive.go index e92038001..cff4c9d70 100644 --- a/modules/kftask/api_receive.go +++ b/modules/kftask/api_receive.go @@ -104,7 +104,7 @@ func (this *apiComp) Receive(session comm.IUserSession, req *pb.KFTaskReceiveReq }) session.SendMsg(string(this.module.GetType()), "receive", &pb.KFTaskReceiveResp{Id: req.Id, Award: award}) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "KFTaskReceiveReq", award) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "KFTaskReceiveReq", award) }) return diff --git a/modules/library/api_getstoryreward.go b/modules/library/api_getstoryreward.go index 2dc620d2d..106db0222 100644 --- a/modules/library/api_getstoryreward.go +++ b/modules/library/api_getstoryreward.go @@ -108,7 +108,7 @@ func (this *apiComp) GetStoryReward(session comm.IUserSession, req *pb.LibraryGe }) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "LibraryGetStoryRewardReq", atno) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "LibraryGetStoryRewardReq", atno) }) return } diff --git a/modules/library/api_lvreward.go b/modules/library/api_lvreward.go index 9da7a3a1b..9cc7435d8 100644 --- a/modules/library/api_lvreward.go +++ b/modules/library/api_lvreward.go @@ -73,7 +73,7 @@ func (this *apiComp) LvReward(session comm.IUserSession, req *pb.LibraryLvReward Reward: atno, }) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "LibraryLvRewardReq", atno) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "LibraryLvRewardReq", atno) }) return } diff --git a/modules/linestory/api_receive.go b/modules/linestory/api_receive.go index 539df42da..ff5f8cb69 100644 --- a/modules/linestory/api_receive.go +++ b/modules/linestory/api_receive.go @@ -69,7 +69,7 @@ func (this *apiComp) Receive(session comm.IUserSession, req *pb.LinestoryReceive } session.SendMsg(string(this.module.GetType()), LinestorySubTypeReceive, rsp) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "LinestoryReceiveReq", conf.Reward) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "LinestoryReceiveReq", conf.Reward) }) return } diff --git a/modules/mail/api_getAttachment.go b/modules/mail/api_getAttachment.go index 01bfcc1f5..b3cc34a42 100644 --- a/modules/mail/api_getAttachment.go +++ b/modules/mail/api_getAttachment.go @@ -61,7 +61,7 @@ func (this *apiComp) GetUserMailAttachment(session comm.IUserSession, req *pb.Ma session.SendMsg(string(this.module.GetType()), "getusermailattachment", &pb.MailGetUserMailAttachmentResp{Mail: mail}) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "MailGetUserMailAttachmentReq", res) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "MailGetUserMailAttachmentReq", res) }) return } @@ -124,7 +124,7 @@ func (this *apiComp) GetAllMailAttachment(session comm.IUserSession, req *pb.Mai Ids: mailIds, }) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "MailGetAllMailAttachmentReq", atno) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "MailGetAllMailAttachmentReq", atno) }) return } diff --git a/modules/mainline/api_booschallengeover.go b/modules/mainline/api_booschallengeover.go index 4514cc182..21e4c0ba1 100644 --- a/modules/mainline/api_booschallengeover.go +++ b/modules/mainline/api_booschallengeover.go @@ -87,7 +87,7 @@ func (this *apiComp) BoosChallengeOver(session comm.IUserSession, req *pb.Mainli Reward: aeward, }) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "MainlineBoosChallengeOverReq", aeward) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "MainlineBoosChallengeOverReq", aeward) }) return } diff --git a/modules/mainline/api_challengeover.go b/modules/mainline/api_challengeover.go index c204fcce4..4c04fb9da 100644 --- a/modules/mainline/api_challengeover.go +++ b/modules/mainline/api_challengeover.go @@ -82,7 +82,7 @@ func (this *apiComp) ChallengeOver(session comm.IUserSession, req *pb.MainlineCh }) // 数据推送 go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "MainlineChallengeOverReq false", conf.PsConsume) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "MainlineChallengeOverReq false", conf.PsConsume) }) return } @@ -197,7 +197,7 @@ func (this *apiComp) ChallengeOver(session comm.IUserSession, req *pb.MainlineCh go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { this.module.ModuleBuried.TriggerBuried(session, tasks...) this.module.ModuleSys.CheckOpenCond(session, comm.OpencondTypeMaxmapid, req.Level) - this.module.WriteUserLog(session.GetUserId(), "MainlineChallengeOverReq", reward) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "MainlineChallengeOverReq", reward) }) return } diff --git a/modules/mainline/api_levelpass.go b/modules/mainline/api_levelpass.go index 1e5061b43..bfec97dab 100644 --- a/modules/mainline/api_levelpass.go +++ b/modules/mainline/api_levelpass.go @@ -137,7 +137,7 @@ func (this *apiComp) LevelPass(session comm.IUserSession, req *pb.MainlineLevelP go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { this.module.ModuleBuried.TriggerBuried(session, tasks...) - this.module.WriteUserLog(session.GetUserId(), "MainlineLevelPassReq", aeward) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "MainlineLevelPassReq", aeward) }) return } diff --git a/modules/mainline/api_receiveaward.go b/modules/mainline/api_receiveaward.go index 29d3bc0aa..d66c113bd 100644 --- a/modules/mainline/api_receiveaward.go +++ b/modules/mainline/api_receiveaward.go @@ -156,7 +156,7 @@ func (this *apiComp) ReceiveAward(session comm.IUserSession, req *pb.MainlineRec }) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "MainlineReceiveAwardReq", reward) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "MainlineReceiveAwardReq", reward) }) return } diff --git a/modules/mainline/api_shopbuy.go b/modules/mainline/api_shopbuy.go index 32e1b7937..fe0cb5b4a 100644 --- a/modules/mainline/api_shopbuy.go +++ b/modules/mainline/api_shopbuy.go @@ -92,7 +92,7 @@ func (this *apiComp) ShopBuy(session comm.IUserSession, req *pb.MainlineShopBuyR go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { this.module.ModuleBuried.TriggerBuried(session, tasks...) - this.module.WriteUserLog(session.GetUserId(), "MainlineShopBuyReq", atno) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "MainlineShopBuyReq", atno) }) return } diff --git a/modules/mainline/api_taskchaptereward.go b/modules/mainline/api_taskchaptereward.go index 7ea542d47..bd275e03d 100644 --- a/modules/mainline/api_taskchaptereward.go +++ b/modules/mainline/api_taskchaptereward.go @@ -96,7 +96,7 @@ func (this *apiComp) TaskChapteReward(session comm.IUserSession, req *pb.Mainlin }) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "MainlineTaskChapteRewardReq", award) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "MainlineTaskChapteRewardReq", award) }) return } diff --git a/modules/mainline/api_taskreceive.go b/modules/mainline/api_taskreceive.go index 4a16d08a8..d41d79608 100644 --- a/modules/mainline/api_taskreceive.go +++ b/modules/mainline/api_taskreceive.go @@ -78,7 +78,7 @@ func (this *apiComp) TaskReceive(session comm.IUserSession, req *pb.MainlineTask session.SendMsg(string(this.module.GetType()), "taskreceive", &pb.MainlineTaskReceiveResp{Id: req.Id, Award: award}) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "MainlineTaskReceiveReq", award) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "MainlineTaskReceiveReq", award) }) return } diff --git a/modules/modeluserlog.go b/modules/modeluserlog.go index 853069ce3..37b1cfebe 100644 --- a/modules/modeluserlog.go +++ b/modules/modeluserlog.go @@ -39,16 +39,22 @@ func (this *modelUserLog) Init(service core.IService, module core.IModule, comp } // 用户操作明细数据记录 -func (this *modelUserLog) AddUserLog(uid string, tag string, data interface{}) { +func (this *modelUserLog) AddUserLog(uid string, itype int32, tag string, data interface{}) { var ( dbModel *db.DBModel err error jsonStr []byte + logType string ) if jsonStr, err = json.Marshal(data); err != nil { log.Errorln(err) return } + if itype == 0 { + logType = "add" // 新增资源类型 + } else if itype == 1 { + logType = "sub" // 消耗资源类型 + } if db.IsCross() { //如果是跨服 直接找到对应的本服 if tag, _, b := utils.UIdSplit(uid); b { if conn, err := db.ServerDBConn(tag); err == nil { @@ -57,6 +63,7 @@ func (this *modelUserLog) AddUserLog(uid string, tag string, data interface{}) { Id: primitive.NewObjectID().Hex(), Uid: uid, ExpireAt: time.Now().Add(time.Hour * 24 * 8).Unix(), + Logtype: logType, Tag: tag, Data: string(jsonStr), }); err != nil { @@ -71,6 +78,7 @@ func (this *modelUserLog) AddUserLog(uid string, tag string, data interface{}) { Uid: uid, ExpireAt: time.Now().Add(time.Hour * 24 * 8).Unix(), Tag: tag, + Logtype: logType, Data: string(jsonStr), }); err != nil { log.Errorln(err) diff --git a/modules/modulebase.go b/modules/modulebase.go index 902f427d1..cb596c7b2 100644 --- a/modules/modulebase.go +++ b/modules/modulebase.go @@ -955,6 +955,6 @@ func (this *ModuleBase) AsynHandleSession(session comm.IUserSession, handle func } //写用户日志 -func (this *ModuleBase) WriteUserLog(uid string, tag string, data interface{}) { - this.userlog.AddUserLog(uid, tag, data) +func (this *ModuleBase) WriteUserLog(uid string, itype int32, tag string, data interface{}) { + this.userlog.AddUserLog(uid, itype, tag, data) } diff --git a/modules/moonfantasy/api_receive.go b/modules/moonfantasy/api_receive.go index ad4f5fc29..20ec7f159 100644 --- a/modules/moonfantasy/api_receive.go +++ b/modules/moonfantasy/api_receive.go @@ -44,7 +44,7 @@ func (this *apiComp) Receive(session comm.IUserSession, req *pb.MoonfantasyRecei return } go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "MoonfantasyReceiveReq", boss.PsMg) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "MoonfantasyReceiveReq", boss.PsMg) }) return } else { @@ -54,7 +54,7 @@ func (this *apiComp) Receive(session comm.IUserSession, req *pb.MoonfantasyRecei this.module.DispenseRes(session, boss.Prize, true) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "MoonfantasyReceiveReq", boss.Prize) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "MoonfantasyReceiveReq", boss.Prize) }) } diff --git a/modules/oldtimes/api_receive.go b/modules/oldtimes/api_receive.go index 275291714..6fd8a2957 100644 --- a/modules/oldtimes/api_receive.go +++ b/modules/oldtimes/api_receive.go @@ -63,7 +63,7 @@ func (this *apiComp) Receive(session comm.IUserSession, req *pb.OldtimesReceiveR if len(res) > 0 { this.module.DispenseRes(session, res, true) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "OldtimesReceiveReq", res) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "OldtimesReceiveReq", res) }) } session.SendMsg(string(this.module.GetType()), "receive", rsp) diff --git a/modules/pagoda/api_challengeover.go b/modules/pagoda/api_challengeover.go index 97a295c41..ab600d7f3 100644 --- a/modules/pagoda/api_challengeover.go +++ b/modules/pagoda/api_challengeover.go @@ -192,7 +192,7 @@ func (this *apiComp) ChallengeOver(session comm.IUserSession, req *pb.PagodaChal go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { this.module.ModuleSys.CheckOpenCond(session, comm.OpencondTypePagoda, conf.Key) this.module.ModuleBuried.TriggerBuried(session, comm.GetBuriedParam(comm.Rtype168, pagoda.Data[conf.Tab], conf.Tab)) - this.module.WriteUserLog(session.GetUserId(), "PagodaChallengeOverReq", conf.Reward) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "PagodaChallengeOverReq", conf.Reward) }) return } diff --git a/modules/pagoda/api_getReward.go b/modules/pagoda/api_getReward.go index 767cae9a1..4d60fc025 100644 --- a/modules/pagoda/api_getReward.go +++ b/modules/pagoda/api_getReward.go @@ -68,7 +68,7 @@ func (this *apiComp) GetReward(session comm.IUserSession, req *pb.PagodaGetRewar Atno: atno, }) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "PagodaGetRewardReq", atno) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "PagodaGetRewardReq", atno) }) } return diff --git a/modules/pagoda/api_racechallengeover.go b/modules/pagoda/api_racechallengeover.go index 8fb03bf05..660be00cd 100644 --- a/modules/pagoda/api_racechallengeover.go +++ b/modules/pagoda/api_racechallengeover.go @@ -188,7 +188,7 @@ func (this *apiComp) ChallengeRaceOver(session comm.IUserSession, req *pb.Pagoda } go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { this.module.ModuleBuried.TriggerBuried(session, tasks...) - this.module.WriteUserLog(session.GetUserId(), "PagodaChallengeRaceOverReq", atno) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "PagodaChallengeRaceOverReq", atno) }) return } diff --git a/modules/parkour/api_allweekreward.go b/modules/parkour/api_allweekreward.go index af7aff417..6857a3594 100644 --- a/modules/parkour/api_allweekreward.go +++ b/modules/parkour/api_allweekreward.go @@ -71,7 +71,7 @@ func (this *apiComp) AllWeekReward(session comm.IUserSession, req *pb.ParkourAll } session.SendMsg(string(this.module.GetType()), "allweekreward", &pb.CapturesheepAllWeekRewardResp{Weekreward: info.Weekreward, Award: award}) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "CapturesheepAllWeekRewardReq", award) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "CapturesheepAllWeekRewardReq", award) }) return } diff --git a/modules/parkour/api_weekreward.go b/modules/parkour/api_weekreward.go index 6a5c8f8a6..0a06440d2 100644 --- a/modules/parkour/api_weekreward.go +++ b/modules/parkour/api_weekreward.go @@ -74,7 +74,7 @@ func (this *apiComp) WeekReward(session comm.IUserSession, req *pb.ParkourWeekRe } session.SendMsg(string(this.module.GetType()), "weekreward", &pb.CapturesheepWeekRewardResp{Id: req.Id, Award: award}) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "CapturesheepWeekRewardReq", award) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "CapturesheepWeekRewardReq", award) }) return } diff --git a/modules/parkour/module.go b/modules/parkour/module.go index 3e17243ea..47f32a8e9 100644 --- a/modules/parkour/module.go +++ b/modules/parkour/module.go @@ -584,7 +584,7 @@ func (this *Parkour) overtimer(task *timewheel.Task, args ...interface{}) { Award: award[v.GetUserId()], }) go this.AsynHandleSession(v, func(session comm.IUserSession) { - this.WriteUserLog(session.GetUserId(), "ParkourRaceOverPush", award[v.GetUserId()]) + this.WriteUserLog(session.GetUserId(), 0, "ParkourRaceOverPush", award[v.GetUserId()]) }) sessions = append(sessions, v) } diff --git a/modules/pay/modelActivity.go b/modules/pay/modelActivity.go index 1917a8e56..30de953d6 100644 --- a/modules/pay/modelActivity.go +++ b/modules/pay/modelActivity.go @@ -143,7 +143,7 @@ func (this *modelActivityComp) deliverybyid(session comm.IUserSession, id int32) return } go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "deliverybyid", conf.Item) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "deliverybyid", conf.Item) }) return } @@ -210,7 +210,7 @@ func (this *modelActivityComp) delivery(session comm.IUserSession, pid string) ( return } go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "delivery", conf.Item) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "delivery", conf.Item) }) return } diff --git a/modules/pay/modelDaily.go b/modules/pay/modelDaily.go index ca3c21eb9..ac6fd756a 100644 --- a/modules/pay/modelDaily.go +++ b/modules/pay/modelDaily.go @@ -103,7 +103,7 @@ func (this *modelDailyComp) deliverybyid(session comm.IUserSession, id int32) (e return } go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "deliverybyid", conf.Item) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "deliverybyid", conf.Item) }) return } @@ -154,7 +154,7 @@ func (this *modelDailyComp) delivery(session comm.IUserSession, pid string) (err return } go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "delivery", conf.Item) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "delivery", conf.Item) }) return } diff --git a/modules/pay/module.go b/modules/pay/module.go index 5d54d3f60..109fdd1af 100644 --- a/modules/pay/module.go +++ b/modules/pay/module.go @@ -208,7 +208,7 @@ func (this *Pay) Rpc_ModulePayDelivery(ctx context.Context, args *pb.PayDelivery go this.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { this.ModuleHero.RechargeMoney(args.Uid, args.Price) this.ModuleBuried.TriggerBuried(session, comm.GetBuriedParam(comm.Rtype229, 1, conf.Pid)) - this.WriteUserLog(session.GetUserId(), "Rpc_ModulePayDelivery", res) + this.WriteUserLog(session.GetUserId(), 0, "Rpc_ModulePayDelivery", res) }) return } @@ -316,7 +316,7 @@ func (this *Pay) ModulePayDelivery(session comm.IUserSession, Productid string, } } go this.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.WriteUserLog(session.GetUserId(), "ModulePayDelivery", res) + this.WriteUserLog(session.GetUserId(), 0, "ModulePayDelivery", res) this.ModuleHero.RechargeMoney(session.GetUserId(), conf.Amount) }) return diff --git a/modules/practice/api_getgymbuff.go b/modules/practice/api_getgymbuff.go index 666c45483..1a4392d0a 100644 --- a/modules/practice/api_getgymbuff.go +++ b/modules/practice/api_getgymbuff.go @@ -64,7 +64,7 @@ func (this *apiComp) GetGymBuff(session comm.IUserSession, req *pb.PracticeGetGy session.SendMsg(string(this.module.GetType()), "getgymbuff", &pb.PracticeGetGymBuffResp{Buffid: buff.Id, Award: award}) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { this.module.ModuleBuried.TriggerBuried(session, tasks...) - this.module.WriteUserLog(session.GetUserId(), "PracticeGetGymBuffReq", award) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "PracticeGetGymBuffReq", award) }) return } diff --git a/modules/practice/api_npcbattklefinish.go b/modules/practice/api_npcbattklefinish.go index 1ba699499..830ede40c 100644 --- a/modules/practice/api_npcbattklefinish.go +++ b/modules/practice/api_npcbattklefinish.go @@ -91,7 +91,7 @@ func (this *apiComp) NPCBattkleFinish(session comm.IUserSession, req *pb.Practic go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { this.module.ModuleBuried.TriggerBuried(session, tasks...) - this.module.WriteUserLog(session.GetUserId(), "PracticeNPCBattkleFinishReq", award) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "PracticeNPCBattkleFinishReq", award) }) return } diff --git a/modules/practice/api_receive.go b/modules/practice/api_receive.go index 944748b15..dd9814f36 100644 --- a/modules/practice/api_receive.go +++ b/modules/practice/api_receive.go @@ -305,7 +305,7 @@ func (this *apiComp) Receive(session comm.IUserSession, req *pb.PracticeReceiveR go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { this.module.ModuleBuried.TriggerBuried(session, tasks...) - this.module.WriteUserLog(session.GetUserId(), "PracticeReceiveReq", award) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "PracticeReceiveReq", award) }) return } diff --git a/modules/practice/api_unLock.go b/modules/practice/api_unLock.go index 7372a738a..33121ae16 100644 --- a/modules/practice/api_unLock.go +++ b/modules/practice/api_unLock.go @@ -81,7 +81,7 @@ func (this *apiComp) UnLock(session comm.IUserSession, req *pb.PracticeUnLockReq go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { this.module.ModuleBuried.TriggerBuried(session, tasks...) - this.module.WriteUserLog(session.GetUserId(), "PracticeUnLockReq", res) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "PracticeUnLockReq", res) }) return diff --git a/modules/privilege/api_buygift.go b/modules/privilege/api_buygift.go index da54a4bbc..cf9240505 100644 --- a/modules/privilege/api_buygift.go +++ b/modules/privilege/api_buygift.go @@ -88,7 +88,7 @@ func (this *apiComp) BuyGift(session comm.IUserSession, req *pb.PrivilegeBuyGift }) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "PrivilegeBuyGiftReq", atno) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "PrivilegeBuyGiftReq", atno) }) return } diff --git a/modules/privilege/module.go b/modules/privilege/module.go index 06614b6e9..e2d6dae76 100644 --- a/modules/privilege/module.go +++ b/modules/privilege/module.go @@ -193,7 +193,7 @@ func (this *Privilege) Delivery(session comm.IUserSession, cId string) (errdata // 推送 session.SendMsg(string(this.GetType()), PrivilegeBuyYuekaResp, &pb.PrivilegeBuyYuekaResp{Data: list}) go this.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.WriteUserLog(session.GetUserId(), "PrivilegeBuyYuekaReq", items) + this.WriteUserLog(session.GetUserId(), 0, "PrivilegeBuyYuekaReq", items) }) return } @@ -227,7 +227,7 @@ func (this *Privilege) RenewPrivilegeCard(session comm.IUserSession, cId string) } session.SendMsg(string(this.GetType()), PrivilegeBuyYuekaResp, &pb.PrivilegeGetListResp{Data: list}) go this.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.WriteUserLog(session.GetUserId(), "PrivilegeGetListReq", conf.DisposableReward) + this.WriteUserLog(session.GetUserId(), 0, "PrivilegeGetListReq", conf.DisposableReward) }) } else { errdata = &pb.ErrorData{ diff --git a/modules/pushgiftbag/module.go b/modules/pushgiftbag/module.go index 0b66e9502..fc4d259db 100644 --- a/modules/pushgiftbag/module.go +++ b/modules/pushgiftbag/module.go @@ -97,7 +97,7 @@ func (this *PushGiftbag) Delivery(session comm.IUserSession, pid string) (errdat }) session.SendMsg(string(this.GetType()), "chanage", &pb.PushGiftbagChanagePush{Item: info.Item}) go this.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.WriteUserLog(session.GetUserId(), "PushGiftbagChanagePush", conf.Lbid) + this.WriteUserLog(session.GetUserId(), 0, "PushGiftbagChanagePush", conf.Lbid) }) return } diff --git a/modules/questionnaire/api_answer.go b/modules/questionnaire/api_answer.go index c8f77f70c..86d5eed18 100644 --- a/modules/questionnaire/api_answer.go +++ b/modules/questionnaire/api_answer.go @@ -93,7 +93,7 @@ func (this *apiComp) Answer(session comm.IUserSession, req *pb.QuestionnaireAnsw } this.module.DispenseRes(session, groupconfig.Reward, true) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "QuestionnaireAnswerReq", groupconfig.Reward) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "QuestionnaireAnswerReq", groupconfig.Reward) }) } tasks = append(tasks, comm.GetBuriedParam(comm.Rtype203, 1, req.Group)) diff --git a/modules/reputation/module.go b/modules/reputation/module.go index 6f08bad15..8490fd1e7 100644 --- a/modules/reputation/module.go +++ b/modules/reputation/module.go @@ -125,7 +125,7 @@ func (this *Reputation) Upgrade(session comm.IUserSession, raceType int32, fv in this.DispenseRes(session, []*cfg.Gameatn{reward}, false) } go this.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.WriteUserLog(session.GetUserId(), "ReputationUpgrade", reward) + this.WriteUserLog(session.GetUserId(), 0, "ReputationUpgrade", reward) }) } diff --git a/modules/shop/api_buy.go b/modules/shop/api_buy.go index f6f8be261..bf6439477 100644 --- a/modules/shop/api_buy.go +++ b/modules/shop/api_buy.go @@ -238,7 +238,7 @@ func (this *apiComp) Buy(session comm.IUserSession, req *pb.ShopBuyReq) (errdata if len(tasks) > 0 { go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { this.module.ModuleBuried.TriggerBuried(session, tasks...) - this.module.WriteUserLog(session.GetUserId(), "ShopBuyResq", award) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "ShopBuyResq", award) }) } return diff --git a/modules/shopcenter/api_receive.go b/modules/shopcenter/api_receive.go index 59266e779..1f4a30d90 100644 --- a/modules/shopcenter/api_receive.go +++ b/modules/shopcenter/api_receive.go @@ -169,7 +169,7 @@ func (this *apiComp) Receive(session comm.IUserSession, req *pb.ShopCenterReceiv } session.SendMsg(string(this.module.GetType()), "receive", &pb.ShopCenterReceiveResp{Fid: req.Fid, Pid: req.Pid, Award: award}) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "ShopCenterReceiveReq", award) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "ShopCenterReceiveReq", award) }) return } diff --git a/modules/smithy/api_atlasaward.go b/modules/smithy/api_atlasaward.go index f550d97c2..2b10f76d8 100644 --- a/modules/smithy/api_atlasaward.go +++ b/modules/smithy/api_atlasaward.go @@ -60,7 +60,7 @@ func (this *apiComp) AtlasAward(session comm.IUserSession, req *pb.SmithyAtlasAw Reward: atno, }) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "SmithyAtlasAwardReq", atno) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "SmithyAtlasAwardReq", atno) }) return } diff --git a/modules/smithy/api_forgeequip.go b/modules/smithy/api_forgeequip.go index 7d01cf800..8108f5c3b 100644 --- a/modules/smithy/api_forgeequip.go +++ b/modules/smithy/api_forgeequip.go @@ -374,7 +374,7 @@ func (this *apiComp) ForgeEquip(session comm.IUserSession, req *pb.SmithyForgeEq go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { this.module.ModuleBuried.TriggerBuried(session, tasks...) - this.module.WriteUserLog(session.GetUserId(), "SmithyForgeEquipReq", atno) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "SmithyForgeEquipReq", atno) }) return diff --git a/modules/smithy/api_receive.go b/modules/smithy/api_receive.go index 4c65a1f77..dcd19eecd 100644 --- a/modules/smithy/api_receive.go +++ b/modules/smithy/api_receive.go @@ -62,7 +62,7 @@ func (this *apiComp) TaskAward(session comm.IUserSession, req *pb.SmithyTaskAwar }) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "SmithyTaskAwardReq", atno) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "SmithyTaskAwardReq", atno) }) return } diff --git a/modules/smithy/api_trade.go b/modules/smithy/api_trade.go index 1b2015600..b82fcf907 100644 --- a/modules/smithy/api_trade.go +++ b/modules/smithy/api_trade.go @@ -72,7 +72,7 @@ func (this *apiComp) Sell(session comm.IUserSession, req *pb.SmithySellReq) (err session.SendMsg(string(this.module.GetType()), "sell", rsp) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "SmithySellReq", atno) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "SmithySellReq", atno) }) return } diff --git a/modules/smithy/module.go b/modules/smithy/module.go index 82a2749a5..a4d720b57 100644 --- a/modules/smithy/module.go +++ b/modules/smithy/module.go @@ -316,7 +316,7 @@ func (this *Smithy) GmSmithyAtlas(session comm.IUserSession) { this.modelAtlas.CheckActivateEquipAtlas(session.GetUserId(), equip, 1) } go this.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.WriteUserLog(session.GetUserId(), "GmSmithyAtlas", atno) + this.WriteUserLog(session.GetUserId(), 0, "GmSmithyAtlas", atno) }) } diff --git a/modules/sociaty/api_cross_activityreceive.go b/modules/sociaty/api_cross_activityreceive.go index 6c954b385..77946af32 100644 --- a/modules/sociaty/api_cross_activityreceive.go +++ b/modules/sociaty/api_cross_activityreceive.go @@ -93,7 +93,7 @@ func (this *apiComp) Activityreceive(session comm.IUserSession, req *pb.SociatyA }) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "SociatyActivityReceiveReq", atno) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "SociatyActivityReceiveReq", atno) }) return } diff --git a/modules/sociaty/api_cross_buy.go b/modules/sociaty/api_cross_buy.go index 81edcc3fb..34aa6c772 100644 --- a/modules/sociaty/api_cross_buy.go +++ b/modules/sociaty/api_cross_buy.go @@ -99,7 +99,7 @@ func (this *apiComp) Buy(session comm.IUserSession, req *pb.SociatyBuyReq) (errd session.SendMsg(string(this.module.GetType()), SociatySubTypeBuy, rsp) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "SociatyBuyReq", atn) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "SociatyBuyReq", atn) }) return } diff --git a/modules/sociaty/api_cross_receive.go b/modules/sociaty/api_cross_receive.go index df013fc40..dc995b535 100644 --- a/modules/sociaty/api_cross_receive.go +++ b/modules/sociaty/api_cross_receive.go @@ -123,7 +123,7 @@ func (this *apiComp) Receive(session comm.IUserSession, req *pb.SociatyReceiveRe session.SendMsg(string(this.module.GetType()), SociatySubTypeReceive, rsp) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "SociatyReceiveReq", atno) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "SociatyReceiveReq", atno) }) return } diff --git a/modules/sociaty/api_cross_sign.go b/modules/sociaty/api_cross_sign.go index 94e6110cc..02d211cbf 100644 --- a/modules/sociaty/api_cross_sign.go +++ b/modules/sociaty/api_cross_sign.go @@ -109,7 +109,7 @@ func (this *apiComp) Sign(session comm.IUserSession, req *pb.SociatySignReq) (er session.SendMsg(string(this.module.GetType()), SociatySubTypeSign, rsp) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "SociatySignReq", atno) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "SociatySignReq", atno) }) return } diff --git a/modules/stonehenge/api_bookaward.go b/modules/stonehenge/api_bookaward.go index 353425dd4..792ded3d0 100644 --- a/modules/stonehenge/api_bookaward.go +++ b/modules/stonehenge/api_bookaward.go @@ -94,7 +94,7 @@ func (this *apiComp) BookAward(session comm.IUserSession, req *pb.StonehengeBook session.SendMsg(string(this.module.GetType()), "bookaward", &pb.StonehengeBookAwardResp{Btype: req.Btype, Stage: req.Stage, Award: award}) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "StonehengeBookAwardReq", award) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "StonehengeBookAwardReq", award) }) return } diff --git a/modules/stonehenge/api_enterlevel.go b/modules/stonehenge/api_enterlevel.go index 23064b80b..ffd8dd0da 100644 --- a/modules/stonehenge/api_enterlevel.go +++ b/modules/stonehenge/api_enterlevel.go @@ -184,7 +184,7 @@ func (this *apiComp) EnterLevel(session comm.IUserSession, req *pb.StonehengeEnt this.module.ModuleBuried.TriggerBuried(session, tasks...) } if len(reward) > 0 { - this.module.WriteUserLog(session.GetUserId(), "StonehengeEnterLevelReq", reward) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "StonehengeEnterLevelReq", reward) } }) return diff --git a/modules/stonehenge/api_event.go b/modules/stonehenge/api_event.go index 7206fa37f..7ee181661 100644 --- a/modules/stonehenge/api_event.go +++ b/modules/stonehenge/api_event.go @@ -634,7 +634,7 @@ func (this *apiComp) Event(session comm.IUserSession, req *pb.StonehengeEventReq this.module.ModuleBuried.TriggerBuried(session, tasks...) } if len(reward) > 0 { - this.module.WriteUserLog(session.GetUserId(), "StonehengeEventReq", reward) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "StonehengeEventReq", reward) } }) diff --git a/modules/stonehenge/api_finish.go b/modules/stonehenge/api_finish.go index 2f04c7c97..b77cb7122 100644 --- a/modules/stonehenge/api_finish.go +++ b/modules/stonehenge/api_finish.go @@ -111,7 +111,7 @@ func (this *apiComp) Finish(session comm.IUserSession, req *pb.StonehengeFinishR }) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "StonehengeFinishReq", atno) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "StonehengeFinishReq", atno) }) return } diff --git a/modules/stonehenge/api_taskreceive.go b/modules/stonehenge/api_taskreceive.go index 721052acb..ae68780c4 100644 --- a/modules/stonehenge/api_taskreceive.go +++ b/modules/stonehenge/api_taskreceive.go @@ -95,7 +95,7 @@ func (this *apiComp) TaskReceive(session comm.IUserSession, req *pb.StonehengeTa session.SendMsg(string(this.module.GetType()), "taskreceive", &pb.StonehengeTaskReceiveResp{Task: info.Task, Award: award}) if len(award) > 0 { go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "StonehengeTaskReceiveReq", award) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "StonehengeTaskReceiveReq", award) }) } diff --git a/modules/stonehenge/api_weekAward.go b/modules/stonehenge/api_weekAward.go index ed6afc00d..34ef75827 100644 --- a/modules/stonehenge/api_weekAward.go +++ b/modules/stonehenge/api_weekAward.go @@ -94,7 +94,7 @@ func (this *apiComp) WeekAward(session comm.IUserSession, req *pb.StonehengeWeek session.SendMsg(string(this.module.GetType()), "weekaward", &pb.StonehengeWeekAwardResp{Id: req.Id, Weeklyreward: info.Weeklyreward, Award: award}) if len(award) > 0 { go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "StonehengeWeekAwardReq", award) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "StonehengeWeekAwardReq", award) }) } diff --git a/modules/storyline/api_complete.go b/modules/storyline/api_complete.go index 6763762f5..c206b9dd9 100644 --- a/modules/storyline/api_complete.go +++ b/modules/storyline/api_complete.go @@ -190,7 +190,7 @@ func (this *apiComp) Complete(session comm.IUserSession, req *pb.StorylineComple session.SendMsg(string(this.module.GetType()), "complete", &pb.StorylineCompleteResp{Level: req.Level, Story: req.Story, Award: award}) if len(award) > 0 { go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "StorylineCompleteReq", award) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "StorylineCompleteReq", award) }) } return diff --git a/modules/turntable/api_draw.go b/modules/turntable/api_draw.go index 08213643f..cb81ad0a8 100644 --- a/modules/turntable/api_draw.go +++ b/modules/turntable/api_draw.go @@ -83,7 +83,7 @@ func (this *apiComp) Draw(session comm.IUserSession, req *pb.TurntableDrawReq) ( }) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "TurntableDrawReq", atno) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "TurntableDrawReq", atno) }) return } diff --git a/modules/uigame/api_latticefinish.go b/modules/uigame/api_latticefinish.go index 002ba9acb..2937a3893 100644 --- a/modules/uigame/api_latticefinish.go +++ b/modules/uigame/api_latticefinish.go @@ -57,7 +57,7 @@ func (this *apiComp) LatticeFinish(session comm.IUserSession, req *pb.UiGameLatt Atno: atno, }) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "UiGameLatticeFinishReq", atno) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "UiGameLatticeFinishReq", atno) }) return } diff --git a/modules/uigame/api_latticegrid.go b/modules/uigame/api_latticegrid.go index fc912d4d7..9322bdc39 100644 --- a/modules/uigame/api_latticegrid.go +++ b/modules/uigame/api_latticegrid.go @@ -139,7 +139,7 @@ func (this *apiComp) LatticeGrid(session comm.IUserSession, req *pb.UiGameLattic Atno: atno, }) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "UiGameLatticeGridReq", atno) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "UiGameLatticeGridReq", atno) }) return } diff --git a/modules/uigame/api_latticereward.go b/modules/uigame/api_latticereward.go index 0e5395ce4..ae918ede6 100644 --- a/modules/uigame/api_latticereward.go +++ b/modules/uigame/api_latticereward.go @@ -65,7 +65,7 @@ func (this *apiComp) LatticeReward(session comm.IUserSession, req *pb.UiGameLatt Atno: atno, }) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "UiGameLatticeRewardReq", atno) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "UiGameLatticeRewardReq", atno) }) return } diff --git a/modules/uigame/api_minerfinish.go b/modules/uigame/api_minerfinish.go index bbab7bb82..f38e95aa7 100644 --- a/modules/uigame/api_minerfinish.go +++ b/modules/uigame/api_minerfinish.go @@ -57,7 +57,7 @@ func (this *apiComp) MinerFinish(session comm.IUserSession, req *pb.UiGameMinerF Atno: atno, }) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "UiGameMinerFinishReq", atno) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "UiGameMinerFinishReq", atno) }) return } diff --git a/modules/uigame/api_minergrid.go b/modules/uigame/api_minergrid.go index 6b46fe02a..ed270a7df 100644 --- a/modules/uigame/api_minergrid.go +++ b/modules/uigame/api_minergrid.go @@ -61,7 +61,7 @@ func (this *apiComp) MinerKey(session comm.IUserSession, req *pb.UiGameMinerKeyR Atno: atno, }) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "UiGameMinerKeyReq", atno) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "UiGameMinerKeyReq", atno) }) return } diff --git a/modules/uigame/api_puzzlegrid.go b/modules/uigame/api_puzzlegrid.go index 2bce6ba82..9e0c424ed 100644 --- a/modules/uigame/api_puzzlegrid.go +++ b/modules/uigame/api_puzzlegrid.go @@ -67,7 +67,7 @@ func (this *apiComp) PuzzleGrid(session comm.IUserSession, req *pb.UiGamePuzzleG }) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "UiGamePuzzleGridReq", atno) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "UiGamePuzzleGridReq", atno) }) return } diff --git a/modules/uigame/api_puzzlereward.go b/modules/uigame/api_puzzlereward.go index 0915d5394..a7e14b6ba 100644 --- a/modules/uigame/api_puzzlereward.go +++ b/modules/uigame/api_puzzlereward.go @@ -50,7 +50,7 @@ func (this *apiComp) PuzzleReward(session comm.IUserSession, req *pb.UiGamePuzzl }) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "UiGamePuzzleRewardReq", atno) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "UiGamePuzzleRewardReq", atno) }) return } diff --git a/modules/uigame/module.go b/modules/uigame/module.go index 1d1767018..2ce3baa57 100644 --- a/modules/uigame/module.go +++ b/modules/uigame/module.go @@ -89,7 +89,7 @@ func (this *UiGame) HDPSTodayConsum(uid string, ps int32) { this.DispenseRes(s, []*cfg.Gameatn{res}, true) go this.AsynHandleSession(s.Clone(), func(session comm.IUserSession) { - this.WriteUserLog(s.GetUserId(), "HDPSTodayConsum", res) + this.WriteUserLog(s.GetUserId(), 0, "HDPSTodayConsum", res) }) } @@ -140,7 +140,7 @@ func (this *UiGame) HDPSTodayConsum(uid string, ps int32) { } this.DispenseRes(s, []*cfg.Gameatn{res}, true) go this.AsynHandleSession(s.Clone(), func(session comm.IUserSession) { - this.WriteUserLog(s.GetUserId(), "HDPSTodayConsum", res) + this.WriteUserLog(s.GetUserId(), 0, "HDPSTodayConsum", res) }) } @@ -191,7 +191,7 @@ func (this *UiGame) HDPSTodayConsum(uid string, ps int32) { } this.DispenseRes(s, []*cfg.Gameatn{res}, true) go this.AsynHandleSession(s.Clone(), func(session comm.IUserSession) { - this.WriteUserLog(s.GetUserId(), "HDPSTodayConsum", res) + this.WriteUserLog(s.GetUserId(), 0, "HDPSTodayConsum", res) }) } diff --git a/modules/user/api_create.go b/modules/user/api_create.go index fadbaf122..17b2dec85 100644 --- a/modules/user/api_create.go +++ b/modules/user/api_create.go @@ -121,7 +121,7 @@ func (this *apiComp) Create(session comm.IUserSession, req *pb.UserCreateReq) (e if len(tasks) > 0 { this.module.ModuleBuried.TriggerBuried(session, tasks...) } - this.module.WriteUserLog(session.GetUserId(), "UserCreateReq", res) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "UserCreateReq", res) }) return } diff --git a/modules/user/api_deposit.go b/modules/user/api_deposit.go index f7da1c103..22896bc33 100644 --- a/modules/user/api_deposit.go +++ b/modules/user/api_deposit.go @@ -75,7 +75,7 @@ func (this *apiComp) Deposit(session comm.IUserSession, req *pb.UserDepositReq) }, }) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "UserDepositReq", atn) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "UserDepositReq", atn) }) return } diff --git a/modules/user/api_puzzleaward.go b/modules/user/api_puzzleaward.go index 9efe0580f..ed688dba0 100644 --- a/modules/user/api_puzzleaward.go +++ b/modules/user/api_puzzleaward.go @@ -71,7 +71,7 @@ func (this *apiComp) PuzzleAward(session comm.IUserSession, req *pb.UserPuzzleAw Index: req.Index, }) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "UserPuzzleAwardReq", res) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "UserPuzzleAwardReq", res) }) return } diff --git a/modules/user/model_user.go b/modules/user/model_user.go index 909bc87fd..d2cb85a49 100644 --- a/modules/user/model_user.go +++ b/modules/user/model_user.go @@ -307,7 +307,7 @@ func (this *ModelUser) changelv(session comm.IUserSession, lv int32, exp int64, this.module.chat.SendSysChatToUser(session, comm.ChatSystem12, lv, 0, name) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { this.module.ModuleSys.CheckOpenCond(session.Clone(), comm.OpencondTypePlatlv, lv) - this.module.WriteUserLog(session.GetUserId(), "changelv", rewards) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "changelv", rewards) }) session.Push() diff --git a/modules/venture/api_lvreward.go b/modules/venture/api_lvreward.go index a1096abe5..f7dc183b1 100644 --- a/modules/venture/api_lvreward.go +++ b/modules/venture/api_lvreward.go @@ -81,7 +81,7 @@ func (this *apiComp) LvReward(session comm.IUserSession, req *pb.VentureLvReward Atno: atno, }) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "VentureLvRewardReq", atno) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "VentureLvRewardReq", atno) }) return } diff --git a/modules/venture/api_signreward.go b/modules/venture/api_signreward.go index cf09c8014..c9a8252ca 100644 --- a/modules/venture/api_signreward.go +++ b/modules/venture/api_signreward.go @@ -71,7 +71,7 @@ func (this *apiComp) SignReward(session comm.IUserSession, req *pb.VentureSignRe Atno: atno, }) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "VentureSignRewardReq", atno) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "VentureSignRewardReq", atno) }) return } diff --git a/modules/viking/api_challengeover.go b/modules/viking/api_challengeover.go index 52f2bf015..6ec5efab0 100644 --- a/modules/viking/api_challengeover.go +++ b/modules/viking/api_challengeover.go @@ -94,7 +94,7 @@ func (this *apiComp) ChallengeOver(session comm.IUserSession, req *pb.VikingChal Data: viking, }) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "VikingChallengeOverReq", vikingCfg.PsConsume) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "VikingChallengeOverReq", vikingCfg.PsConsume) }) return } @@ -254,7 +254,7 @@ func (this *apiComp) ChallengeOver(session comm.IUserSession, req *pb.VikingChal if len(tasks) > 0 { go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { this.module.ModuleBuried.TriggerBuried(session, tasks...) - this.module.WriteUserLog(session.GetUserId(), "VikingChallengeOverReq", szAtno) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "VikingChallengeOverReq", szAtno) }) } return diff --git a/modules/warorder/api_receive.go b/modules/warorder/api_receive.go index d0a058992..226c115ba 100644 --- a/modules/warorder/api_receive.go +++ b/modules/warorder/api_receive.go @@ -146,7 +146,7 @@ func (this *apiComp) Receive(session comm.IUserSession, req *pb.WarorderReceiveR session.SendMsg(string(this.module.GetType()), "receive", &pb.WarorderReceiveResp{Rtype: req.Rtype, Warorder: warorder, Dwarorder: dwarorder, Award: ads}) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "WarorderReceiveReq", awards) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "WarorderReceiveReq", awards) }) return } diff --git a/modules/weektask/api_activityreceive.go b/modules/weektask/api_activityreceive.go index c4863d05c..ae8dd8013 100644 --- a/modules/weektask/api_activityreceive.go +++ b/modules/weektask/api_activityreceive.go @@ -78,7 +78,7 @@ func (this *apiComp) ActivityReceive(session comm.IUserSession, req *pb.WeekTask }) session.SendMsg(string(this.module.GetType()), "activityreceive", &pb.WeekTaskActivityReceiveResp{Id: req.Id, Award: award}) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "WeekTaskActivityReceiveReq", conf.Reword) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "WeekTaskActivityReceiveReq", conf.Reword) }) return } diff --git a/modules/weektask/api_receive.go b/modules/weektask/api_receive.go index c5914ed3a..368b5d5e0 100644 --- a/modules/weektask/api_receive.go +++ b/modules/weektask/api_receive.go @@ -106,7 +106,7 @@ func (this *apiComp) Receive(session comm.IUserSession, req *pb.WeekTaskReceiveR }) session.SendMsg(string(this.module.GetType()), "receive", &pb.WeekTaskReceiveResp{Tid: req.Tid, Activity: info.Activity, Tasks: info.Tasks, Progress: progress, Award: award}) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "WeekTaskReceiveReq", award) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "WeekTaskReceiveReq", award) }) return } diff --git a/modules/whackamole/api_award.go b/modules/whackamole/api_award.go index 16203e843..63c2b61a3 100644 --- a/modules/whackamole/api_award.go +++ b/modules/whackamole/api_award.go @@ -36,7 +36,7 @@ func (this *apiComp) Award(session comm.IUserSession, req *pb.WhackamoleAwardReq session.SendMsg(string(this.module.GetType()), "award", &pb.WhackamoleAwardResp{Id: req.Id, Award: award}) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "WhackamoleAwardReq", award) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "WhackamoleAwardReq", award) }) return } diff --git a/modules/wtask/api_accept.go b/modules/wtask/api_accept.go index e132f12a0..c9c90fd09 100644 --- a/modules/wtask/api_accept.go +++ b/modules/wtask/api_accept.go @@ -111,7 +111,7 @@ func (this *apiComp) Accept(session comm.IUserSession, req *pb.WTaskAcceptReq) ( } go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "WTaskAcceptReq", conf.GetItem) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "WTaskAcceptReq", conf.GetItem) }) return } diff --git a/modules/wtask/api_battlefinish.go b/modules/wtask/api_battlefinish.go index a5fcb8111..6bbe99b42 100644 --- a/modules/wtask/api_battlefinish.go +++ b/modules/wtask/api_battlefinish.go @@ -102,7 +102,7 @@ func (this *apiComp) BattleFinish(session comm.IUserSession, req *pb.WTaskBattle if len(tasks) > 0 { go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { this.module.ModuleBuried.TriggerBuried(session, tasks...) - this.module.WriteUserLog(session.GetUserId(), "WTaskBattleFinishReq", atno) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "WTaskBattleFinishReq", atno) }) } return diff --git a/modules/wtask/api_boxreceive.go b/modules/wtask/api_boxreceive.go index 5bcc3137c..9aed73260 100644 --- a/modules/wtask/api_boxreceive.go +++ b/modules/wtask/api_boxreceive.go @@ -117,7 +117,7 @@ func (this *apiComp) BoxReceive(session comm.IUserSession, req *pb.WTaskBoxRecei if len(tasks) > 0 { go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { this.module.ModuleBuried.TriggerBuried(session, tasks...) - this.module.WriteUserLog(session.GetUserId(), "WTaskBoxReceiveReq", award) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "WTaskBoxReceiveReq", award) }) } return diff --git a/modules/wtask/api_chapterreward.go b/modules/wtask/api_chapterreward.go index 21b6d92ab..0584f18ee 100644 --- a/modules/wtask/api_chapterreward.go +++ b/modules/wtask/api_chapterreward.go @@ -72,7 +72,7 @@ func (this *apiComp) ChapterReward(session comm.IUserSession, req *pb.WTaskChapt // } session.SendMsg(string(this.module.GetType()), "chapterreward", &pb.WTaskChapterRewardResp{Group: req.Group, Award: award}) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "WTaskChapterRewardReq", award) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "WTaskChapterRewardReq", award) }) return } diff --git a/modules/wtask/api_eventcomplete.go b/modules/wtask/api_eventcomplete.go index b5c310be5..619bd0111 100644 --- a/modules/wtask/api_eventcomplete.go +++ b/modules/wtask/api_eventcomplete.go @@ -94,7 +94,7 @@ func (this *apiComp) EventComplete(session comm.IUserSession, req *pb.WTaskEvent go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { this.module.ModuleBuried.TriggerBuried(session, tasks...) - this.module.WriteUserLog(session.GetUserId(), "WTaskEventCompleteReq", award) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "WTaskEventCompleteReq", award) }) return } diff --git a/modules/wtask/api_exchange.go b/modules/wtask/api_exchange.go index 420e1b8f6..5bcbac6d2 100644 --- a/modules/wtask/api_exchange.go +++ b/modules/wtask/api_exchange.go @@ -87,7 +87,7 @@ func (this *apiComp) Exchange(session comm.IUserSession, req *pb.WTaskExchangeRe session.SendMsg(string(this.module.GetType()), "exchange", &pb.WTaskExchangeResp{Eid: req.Eid, Award: award}) go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { - this.module.WriteUserLog(session.GetUserId(), "WTaskExchangeReq", award) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "WTaskExchangeReq", award) }) return } diff --git a/modules/wtask/api_finish.go b/modules/wtask/api_finish.go index 49c64243f..20b9243a3 100644 --- a/modules/wtask/api_finish.go +++ b/modules/wtask/api_finish.go @@ -152,7 +152,7 @@ func (this *apiComp) Finish(session comm.IUserSession, req *pb.WTaskFinishReq) ( } go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { this.module.ModuleSys.CheckOpenCond(session.Clone(), comm.OpencondTypeWorldtaskid, req.Tid) - this.module.WriteUserLog(session.GetUserId(), "WTaskFinishReq", award) + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "WTaskFinishReq", award) }) return } From 2aba12b6801112dd7ec3d4f6867a8897a2da74dc Mon Sep 17 00:00:00 2001 From: meixiongfeng <766881921@qq.com> Date: Tue, 14 Nov 2023 14:30:58 +0800 Subject: [PATCH 2/5] =?UTF-8?q?=E6=8A=A4=E6=9C=88=E7=AD=89=E7=BA=A7=20?= =?UTF-8?q?=E6=A8=A1=E5=9D=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- comm/const.go | 3 + modules/moonlv/api.go | 25 ++ modules/moonlv/api_atlasactivate.go | 26 ++ modules/moonlv/api_atlasaward.go | 20 ++ modules/moonlv/api_getlist.go | 29 ++ modules/moonlv/comp_configure.go | 64 ++++ modules/moonlv/model_moonlv.go | 47 +++ modules/moonlv/module.go | 38 +++ modules/user/api_login.go | 1 + pb/moonlv_db.pb.go | 273 ++++++++++++++++ pb/moonlv_msg.pb.go | 491 ++++++++++++++++++++++++++++ 11 files changed, 1017 insertions(+) create mode 100644 modules/moonlv/api.go create mode 100644 modules/moonlv/api_atlasactivate.go create mode 100644 modules/moonlv/api_atlasaward.go create mode 100644 modules/moonlv/api_getlist.go create mode 100644 modules/moonlv/comp_configure.go create mode 100644 modules/moonlv/model_moonlv.go create mode 100644 modules/moonlv/module.go create mode 100644 pb/moonlv_db.pb.go create mode 100644 pb/moonlv_msg.pb.go diff --git a/comm/const.go b/comm/const.go index 030c100a4..2f5affed6 100644 --- a/comm/const.go +++ b/comm/const.go @@ -123,6 +123,7 @@ const ( ModuleIsLand core.M_Modules = "island" //海岛探险 ModuleEgghunt core.M_Modules = "egghunt" //彩蛋 ModuleCatchbugs core.M_Modules = "catchbugs" //捉虫子 + ModuleMoonlv core.M_Modules = "monnlv" //护月等级 ) // 数据表名定义处 @@ -419,6 +420,8 @@ const ( //用户日志 TableUserLog = "userlog" + + TableMoonlv = "moonlv" ) // RPC服务接口定义处 diff --git a/modules/moonlv/api.go b/modules/moonlv/api.go new file mode 100644 index 000000000..68d49565c --- /dev/null +++ b/modules/moonlv/api.go @@ -0,0 +1,25 @@ +package moonlv + +import ( + "go_dreamfactory/lego/core" + "go_dreamfactory/modules" +) + +type apiComp struct { + modules.MCompGate + service core.IService + module *Moonlv +} + +//组件初始化接口 +func (this *apiComp) Init(service core.IService, module core.IModule, comp core.IModuleComp, options core.IModuleOptions) (err error) { + this.MCompGate.Init(service, module, comp, options) + this.module = module.(*Moonlv) + this.service = service + return +} + +func (this *apiComp) Start() (err error) { + err = this.MCompGate.Start() + return +} diff --git a/modules/moonlv/api_atlasactivate.go b/modules/moonlv/api_atlasactivate.go new file mode 100644 index 000000000..089630cad --- /dev/null +++ b/modules/moonlv/api_atlasactivate.go @@ -0,0 +1,26 @@ +package moonlv + +import ( + "go_dreamfactory/comm" + "go_dreamfactory/pb" +) + +//参数校验 +func (this *apiComp) ActivateCheck(session comm.IUserSession, req *pb.AtlasActivateReq) (errdata *pb.ErrorData) { + if req.Id == "" { + errdata = &pb.ErrorData{ + Code: pb.ErrorCode_ReqParameterError, + Title: pb.ErrorCode_ReqParameterError.ToString(), + } + } + return +} + +// 激活图鉴信息 +func (this *apiComp) Activate(session comm.IUserSession, req *pb.AtlasActivateReq) (errdata *pb.ErrorData) { + if errdata = this.ActivateCheck(session, req); errdata != nil { + return + } + + return +} diff --git a/modules/moonlv/api_atlasaward.go b/modules/moonlv/api_atlasaward.go new file mode 100644 index 000000000..46eff30cd --- /dev/null +++ b/modules/moonlv/api_atlasaward.go @@ -0,0 +1,20 @@ +package moonlv + +import ( + "go_dreamfactory/comm" + "go_dreamfactory/pb" +) + +//参数校验 +func (this *apiComp) AwardCheck(session comm.IUserSession, req *pb.AtlasAwardReq) (errdata *pb.ErrorData) { + + return +} + +// 一键领取所有可以领取的奖励 +func (this *apiComp) Award(session comm.IUserSession, req *pb.AtlasAwardReq) (errdata *pb.ErrorData) { + + session.SendMsg(string(this.module.GetType()), "award", &pb.AtlasAwardResp{}) + + return +} diff --git a/modules/moonlv/api_getlist.go b/modules/moonlv/api_getlist.go new file mode 100644 index 000000000..4dd10afd4 --- /dev/null +++ b/modules/moonlv/api_getlist.go @@ -0,0 +1,29 @@ +package moonlv + +import ( + "go_dreamfactory/comm" + "go_dreamfactory/pb" +) + +//参数校验 +func (this *apiComp) GetListCheck(session comm.IUserSession, req *pb.MoonlvGetListReq) (errdata *pb.ErrorData) { + + return +} + +// 获取护月等级基本信息 +func (this *apiComp) GetList(session comm.IUserSession, req *pb.MoonlvGetListReq) (errdata *pb.ErrorData) { + + list, err := this.module.modelMoonlv.getMoonlvList(session.GetUserId()) + if err != nil { + errdata = &pb.ErrorData{ + Code: pb.ErrorCode_DBError, + Title: pb.ErrorCode_DBError.ToString(), + } + return + } + session.SendMsg(string(this.module.GetType()), "getlist", &pb.MoonlvGetListResp{ + Data: list, + }) + return +} diff --git a/modules/moonlv/comp_configure.go b/modules/moonlv/comp_configure.go new file mode 100644 index 000000000..c06db5184 --- /dev/null +++ b/modules/moonlv/comp_configure.go @@ -0,0 +1,64 @@ +package moonlv + +import ( + "go_dreamfactory/comm" + "go_dreamfactory/lego/core" + "go_dreamfactory/lego/sys/log" + "go_dreamfactory/modules" + "go_dreamfactory/sys/configure" + cfg "go_dreamfactory/sys/configure/structs" +) + +const ( + pandaJx = "game_pandamasjx.json" // 武馆教习 + +) + +// /配置管理基础组件 +type configureComp struct { + modules.MCompConfigure + module *Moonlv +} + +// 组件初始化接口 +func (this *configureComp) Init(service core.IService, module core.IModule, comp core.IModuleComp, options core.IModuleOptions) (err error) { + err = this.MCompConfigure.Init(service, module, comp, options) + this.module = module.(*Moonlv) + err = this.LoadMultiConfigure(map[string]interface{}{ + pandaJx: cfg.NewGamePandamasJx, + }) + + return +} + +// 加载多个配置文件 +func (this *configureComp) LoadMultiConfigure(confs map[string]interface{}) (err error) { + for k, v := range confs { + err = configure.RegisterConfigure(k, v, nil) + if err != nil { + log.Errorf("配置文件:%s解析失败!", k) + break + } + } + return +} + +// 读取配置数据 +func (this *configureComp) GetConfigure(name string) (v interface{}, err error) { + return configure.GetConfigure(name) +} + +// 获取教习数据 +func (this *configureComp) GetPandoJxConf(id string) (conf *cfg.GamePandamasJxData, err error) { + + if v, err := this.GetConfigure(pandaJx); err == nil { + if configure, ok := v.(*cfg.GamePandamasJx); ok { + if conf = configure.Get(id); conf == nil { + err = comm.NewNotFoundConfErr("atlas", pandaJx, id) + this.module.Errorln(err) + } + } + } + err = comm.NewNotFoundConfErr("atlas", pandaJx, id) + return +} diff --git a/modules/moonlv/model_moonlv.go b/modules/moonlv/model_moonlv.go new file mode 100644 index 000000000..8a441c036 --- /dev/null +++ b/modules/moonlv/model_moonlv.go @@ -0,0 +1,47 @@ +package moonlv + +import ( + "go_dreamfactory/comm" + "go_dreamfactory/lego/core" + "go_dreamfactory/modules" + "go_dreamfactory/pb" + + "go.mongodb.org/mongo-driver/bson/primitive" + "go.mongodb.org/mongo-driver/mongo" + "go.mongodb.org/mongo-driver/x/bsonx" +) + +type modelMoonlv struct { + modules.MCompModel + module *Moonlv +} + +func (this *modelMoonlv) Init(service core.IService, module core.IModule, comp core.IModuleComp, options core.IModuleOptions) (err error) { + this.TableName = string(comm.TableMoonlv) + err = this.MCompModel.Init(service, module, comp, options) + this.module = module.(*Moonlv) + // uid 创建索引 + this.DB.CreateIndex(core.SqlTable(this.TableName), mongo.IndexModel{ + Keys: bsonx.Doc{{Key: "uid", Value: bsonx.Int32(1)}}, + }) + return +} + +func (this *modelMoonlv) getMoonlvList(uid string) (result *pb.DBMoonLv, err error) { + result = &pb.DBMoonLv{} + if err = this.Get(uid, result); err != nil { + if mongo.ErrNoDocuments == err { + result.Id = primitive.NewObjectID().Hex() + result.Uid = uid + result.Reward = make(map[int32]bool) + this.Add(uid, result) + err = nil + } + return + } + return +} + +func (this *modelMoonlv) modifyMoonlvList(uid string, data map[string]interface{}) error { + return this.Change(uid, data) +} diff --git a/modules/moonlv/module.go b/modules/moonlv/module.go new file mode 100644 index 000000000..89ec171a2 --- /dev/null +++ b/modules/moonlv/module.go @@ -0,0 +1,38 @@ +package moonlv + +import ( + "go_dreamfactory/comm" + "go_dreamfactory/lego/core" + "go_dreamfactory/modules" +) + +type Moonlv struct { + modules.ModuleBase + api *apiComp + configure *configureComp + modelMoonlv *modelMoonlv + service core.IService +} + +func NewModule() core.IModule { + return &Moonlv{} +} + +func (this *Moonlv) GetType() core.M_Modules { + return comm.ModuleMoonlv +} + +func (this *Moonlv) Init(service core.IService, module core.IModule, options core.IModuleOptions) (err error) { + if err = this.ModuleBase.Init(service, module, options); err != nil { + return + } + this.service = service + return +} + +func (this *Moonlv) OnInstallComp() { + this.ModuleBase.OnInstallComp() + this.api = this.RegisterComp(new(apiComp)).(*apiComp) + this.configure = this.RegisterComp(new(configureComp)).(*configureComp) + this.modelMoonlv = this.RegisterComp(new(modelMoonlv)).(*modelMoonlv) +} diff --git a/modules/user/api_login.go b/modules/user/api_login.go index 96f49be07..38423be76 100644 --- a/modules/user/api_login.go +++ b/modules/user/api_login.go @@ -73,6 +73,7 @@ func (this *apiComp) Login(session comm.IUserSession, req *pb.UserLoginReq) (err expand = &pb.DBUserExpand{} user.CurSkin = this.module.ModuleTools.GetGlobalConf().Initper.T + user.Skins = []string{user.CurSkin} } // 玩家是否封号 if user.Ban { diff --git a/pb/moonlv_db.pb.go b/pb/moonlv_db.pb.go new file mode 100644 index 000000000..f374b7452 --- /dev/null +++ b/pb/moonlv_db.pb.go @@ -0,0 +1,273 @@ +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.28.0 +// protoc v3.20.0 +// source: moonlv/moonlv_db.proto + +package pb + +import ( + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" + sync "sync" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +type DBMoonLv struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id" bson:"_id"` //ID + Uid string `protobuf:"bytes,2,opt,name=uid,proto3" json:"uid" bson:"uid"` //用户ID + Tasks []*MoonTask `protobuf:"bytes,3,rep,name=tasks,proto3" json:"tasks" bson:"tasks"` // 任务列表 + Lv int32 `protobuf:"varint,4,opt,name=lv,proto3" json:"lv"` // 月明度等级 + Reward map[int32]bool `protobuf:"bytes,5,rep,name=reward,proto3" json:"reward" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` // 等级奖励 +} + +func (x *DBMoonLv) Reset() { + *x = DBMoonLv{} + if protoimpl.UnsafeEnabled { + mi := &file_moonlv_moonlv_db_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *DBMoonLv) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DBMoonLv) ProtoMessage() {} + +func (x *DBMoonLv) ProtoReflect() protoreflect.Message { + mi := &file_moonlv_moonlv_db_proto_msgTypes[0] + 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 DBMoonLv.ProtoReflect.Descriptor instead. +func (*DBMoonLv) Descriptor() ([]byte, []int) { + return file_moonlv_moonlv_db_proto_rawDescGZIP(), []int{0} +} + +func (x *DBMoonLv) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *DBMoonLv) GetUid() string { + if x != nil { + return x.Uid + } + return "" +} + +func (x *DBMoonLv) GetTasks() []*MoonTask { + if x != nil { + return x.Tasks + } + return nil +} + +func (x *DBMoonLv) GetLv() int32 { + if x != nil { + return x.Lv + } + return 0 +} + +func (x *DBMoonLv) GetReward() map[int32]bool { + if x != nil { + return x.Reward + } + return nil +} + +type MoonTask struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + TaskId int32 `protobuf:"varint,1,opt,name=taskId,proto3" json:"taskId" bson:"taskId"` // 任务ID + Received int32 `protobuf:"varint,2,opt,name=received,proto3" json:"received" bson:"received"` //领取状态 0未领取 1待领取 2已领取 + Cond *ConIProgress `protobuf:"bytes,3,opt,name=cond,proto3" json:"cond" bson:"cond"` //任务进度 +} + +func (x *MoonTask) Reset() { + *x = MoonTask{} + if protoimpl.UnsafeEnabled { + mi := &file_moonlv_moonlv_db_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *MoonTask) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MoonTask) ProtoMessage() {} + +func (x *MoonTask) ProtoReflect() protoreflect.Message { + mi := &file_moonlv_moonlv_db_proto_msgTypes[1] + 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 MoonTask.ProtoReflect.Descriptor instead. +func (*MoonTask) Descriptor() ([]byte, []int) { + return file_moonlv_moonlv_db_proto_rawDescGZIP(), []int{1} +} + +func (x *MoonTask) GetTaskId() int32 { + if x != nil { + return x.TaskId + } + return 0 +} + +func (x *MoonTask) GetReceived() int32 { + if x != nil { + return x.Received + } + return 0 +} + +func (x *MoonTask) GetCond() *ConIProgress { + if x != nil { + return x.Cond + } + return nil +} + +var File_moonlv_moonlv_db_proto protoreflect.FileDescriptor + +var file_moonlv_moonlv_db_proto_rawDesc = []byte{ + 0x0a, 0x16, 0x6d, 0x6f, 0x6f, 0x6e, 0x6c, 0x76, 0x2f, 0x6d, 0x6f, 0x6f, 0x6e, 0x6c, 0x76, 0x5f, + 0x64, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x16, 0x62, 0x75, 0x72, 0x69, 0x65, 0x64, + 0x2f, 0x62, 0x75, 0x72, 0x69, 0x65, 0x64, 0x5f, 0x64, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x22, 0xc7, 0x01, 0x0a, 0x08, 0x44, 0x42, 0x4d, 0x6f, 0x6f, 0x6e, 0x4c, 0x76, 0x12, 0x0e, 0x0a, + 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x10, 0x0a, + 0x03, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x69, 0x64, 0x12, + 0x1f, 0x0a, 0x05, 0x74, 0x61, 0x73, 0x6b, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x09, + 0x2e, 0x4d, 0x6f, 0x6f, 0x6e, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x05, 0x74, 0x61, 0x73, 0x6b, 0x73, + 0x12, 0x0e, 0x0a, 0x02, 0x6c, 0x76, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x6c, 0x76, + 0x12, 0x2d, 0x0a, 0x06, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x15, 0x2e, 0x44, 0x42, 0x4d, 0x6f, 0x6f, 0x6e, 0x4c, 0x76, 0x2e, 0x52, 0x65, 0x77, 0x61, + 0x72, 0x64, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x1a, + 0x39, 0x0a, 0x0b, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, + 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, + 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x61, 0x0a, 0x08, 0x4d, 0x6f, + 0x6f, 0x6e, 0x54, 0x61, 0x73, 0x6b, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x12, 0x1a, + 0x0a, 0x08, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x08, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x12, 0x21, 0x0a, 0x04, 0x63, 0x6f, + 0x6e, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x43, 0x6f, 0x6e, 0x49, 0x50, + 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x52, 0x04, 0x63, 0x6f, 0x6e, 0x64, 0x42, 0x06, 0x5a, + 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, +} + +var ( + file_moonlv_moonlv_db_proto_rawDescOnce sync.Once + file_moonlv_moonlv_db_proto_rawDescData = file_moonlv_moonlv_db_proto_rawDesc +) + +func file_moonlv_moonlv_db_proto_rawDescGZIP() []byte { + file_moonlv_moonlv_db_proto_rawDescOnce.Do(func() { + file_moonlv_moonlv_db_proto_rawDescData = protoimpl.X.CompressGZIP(file_moonlv_moonlv_db_proto_rawDescData) + }) + return file_moonlv_moonlv_db_proto_rawDescData +} + +var file_moonlv_moonlv_db_proto_msgTypes = make([]protoimpl.MessageInfo, 3) +var file_moonlv_moonlv_db_proto_goTypes = []interface{}{ + (*DBMoonLv)(nil), // 0: DBMoonLv + (*MoonTask)(nil), // 1: MoonTask + nil, // 2: DBMoonLv.RewardEntry + (*ConIProgress)(nil), // 3: ConIProgress +} +var file_moonlv_moonlv_db_proto_depIdxs = []int32{ + 1, // 0: DBMoonLv.tasks:type_name -> MoonTask + 2, // 1: DBMoonLv.reward:type_name -> DBMoonLv.RewardEntry + 3, // 2: MoonTask.cond:type_name -> ConIProgress + 3, // [3:3] is the sub-list for method output_type + 3, // [3:3] is the sub-list for method input_type + 3, // [3:3] is the sub-list for extension type_name + 3, // [3:3] is the sub-list for extension extendee + 0, // [0:3] is the sub-list for field type_name +} + +func init() { file_moonlv_moonlv_db_proto_init() } +func file_moonlv_moonlv_db_proto_init() { + if File_moonlv_moonlv_db_proto != nil { + return + } + file_buried_buried_db_proto_init() + if !protoimpl.UnsafeEnabled { + file_moonlv_moonlv_db_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DBMoonLv); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_moonlv_moonlv_db_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MoonTask); 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{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_moonlv_moonlv_db_proto_rawDesc, + NumEnums: 0, + NumMessages: 3, + NumExtensions: 0, + NumServices: 0, + }, + GoTypes: file_moonlv_moonlv_db_proto_goTypes, + DependencyIndexes: file_moonlv_moonlv_db_proto_depIdxs, + MessageInfos: file_moonlv_moonlv_db_proto_msgTypes, + }.Build() + File_moonlv_moonlv_db_proto = out.File + file_moonlv_moonlv_db_proto_rawDesc = nil + file_moonlv_moonlv_db_proto_goTypes = nil + file_moonlv_moonlv_db_proto_depIdxs = nil +} diff --git a/pb/moonlv_msg.pb.go b/pb/moonlv_msg.pb.go new file mode 100644 index 000000000..62e175bd2 --- /dev/null +++ b/pb/moonlv_msg.pb.go @@ -0,0 +1,491 @@ +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.28.0 +// protoc v3.20.0 +// source: moonlv/moonlv_msg.proto + +package pb + +import ( + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" + sync "sync" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +// 查看月明度信息 +type MoonlvGetListReq struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *MoonlvGetListReq) Reset() { + *x = MoonlvGetListReq{} + if protoimpl.UnsafeEnabled { + mi := &file_moonlv_moonlv_msg_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *MoonlvGetListReq) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MoonlvGetListReq) ProtoMessage() {} + +func (x *MoonlvGetListReq) ProtoReflect() protoreflect.Message { + mi := &file_moonlv_moonlv_msg_proto_msgTypes[0] + 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 MoonlvGetListReq.ProtoReflect.Descriptor instead. +func (*MoonlvGetListReq) Descriptor() ([]byte, []int) { + return file_moonlv_moonlv_msg_proto_rawDescGZIP(), []int{0} +} + +type MoonlvGetListResp struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data *DBMoonLv `protobuf:"bytes,1,opt,name=data,proto3" json:"data"` +} + +func (x *MoonlvGetListResp) Reset() { + *x = MoonlvGetListResp{} + if protoimpl.UnsafeEnabled { + mi := &file_moonlv_moonlv_msg_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *MoonlvGetListResp) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MoonlvGetListResp) ProtoMessage() {} + +func (x *MoonlvGetListResp) ProtoReflect() protoreflect.Message { + mi := &file_moonlv_moonlv_msg_proto_msgTypes[1] + 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 MoonlvGetListResp.ProtoReflect.Descriptor instead. +func (*MoonlvGetListResp) Descriptor() ([]byte, []int) { + return file_moonlv_moonlv_msg_proto_rawDescGZIP(), []int{1} +} + +func (x *MoonlvGetListResp) GetData() *DBMoonLv { + if x != nil { + return x.Data + } + return nil +} + +// 等级奖励领取 +type MoonlvAwardReq struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Lv int32 `protobuf:"varint,1,opt,name=lv,proto3" json:"lv"` +} + +func (x *MoonlvAwardReq) Reset() { + *x = MoonlvAwardReq{} + if protoimpl.UnsafeEnabled { + mi := &file_moonlv_moonlv_msg_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *MoonlvAwardReq) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MoonlvAwardReq) ProtoMessage() {} + +func (x *MoonlvAwardReq) ProtoReflect() protoreflect.Message { + mi := &file_moonlv_moonlv_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 MoonlvAwardReq.ProtoReflect.Descriptor instead. +func (*MoonlvAwardReq) Descriptor() ([]byte, []int) { + return file_moonlv_moonlv_msg_proto_rawDescGZIP(), []int{2} +} + +func (x *MoonlvAwardReq) GetLv() int32 { + if x != nil { + return x.Lv + } + return 0 +} + +type MoonlvAwardResp struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data *DBMoonLv `protobuf:"bytes,1,opt,name=data,proto3" json:"data"` // 奖励信息 + Res []*UserAssets `protobuf:"bytes,2,rep,name=res,proto3" json:"res"` // 获得的奖励 +} + +func (x *MoonlvAwardResp) Reset() { + *x = MoonlvAwardResp{} + if protoimpl.UnsafeEnabled { + mi := &file_moonlv_moonlv_msg_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *MoonlvAwardResp) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MoonlvAwardResp) ProtoMessage() {} + +func (x *MoonlvAwardResp) ProtoReflect() protoreflect.Message { + mi := &file_moonlv_moonlv_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 MoonlvAwardResp.ProtoReflect.Descriptor instead. +func (*MoonlvAwardResp) Descriptor() ([]byte, []int) { + return file_moonlv_moonlv_msg_proto_rawDescGZIP(), []int{3} +} + +func (x *MoonlvAwardResp) GetData() *DBMoonLv { + if x != nil { + return x.Data + } + return nil +} + +func (x *MoonlvAwardResp) GetRes() []*UserAssets { + if x != nil { + return x.Res + } + return nil +} + +// 任务奖励领取 +type MoonlvTaskAwardReq struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + TaskId int32 `protobuf:"varint,1,opt,name=taskId,proto3" json:"taskId"` +} + +func (x *MoonlvTaskAwardReq) Reset() { + *x = MoonlvTaskAwardReq{} + if protoimpl.UnsafeEnabled { + mi := &file_moonlv_moonlv_msg_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *MoonlvTaskAwardReq) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MoonlvTaskAwardReq) ProtoMessage() {} + +func (x *MoonlvTaskAwardReq) ProtoReflect() protoreflect.Message { + mi := &file_moonlv_moonlv_msg_proto_msgTypes[4] + 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 MoonlvTaskAwardReq.ProtoReflect.Descriptor instead. +func (*MoonlvTaskAwardReq) Descriptor() ([]byte, []int) { + return file_moonlv_moonlv_msg_proto_rawDescGZIP(), []int{4} +} + +func (x *MoonlvTaskAwardReq) GetTaskId() int32 { + if x != nil { + return x.TaskId + } + return 0 +} + +type MoonlvTaskAwardResp struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + TaskId int32 `protobuf:"varint,1,opt,name=taskId,proto3" json:"taskId"` + Reward []*UserAtno `protobuf:"bytes,2,rep,name=reward,proto3" json:"reward"` // 获得的奖励 + Data *DBMoonLv `protobuf:"bytes,3,opt,name=data,proto3" json:"data"` +} + +func (x *MoonlvTaskAwardResp) Reset() { + *x = MoonlvTaskAwardResp{} + if protoimpl.UnsafeEnabled { + mi := &file_moonlv_moonlv_msg_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *MoonlvTaskAwardResp) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MoonlvTaskAwardResp) ProtoMessage() {} + +func (x *MoonlvTaskAwardResp) ProtoReflect() protoreflect.Message { + mi := &file_moonlv_moonlv_msg_proto_msgTypes[5] + 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 MoonlvTaskAwardResp.ProtoReflect.Descriptor instead. +func (*MoonlvTaskAwardResp) Descriptor() ([]byte, []int) { + return file_moonlv_moonlv_msg_proto_rawDescGZIP(), []int{5} +} + +func (x *MoonlvTaskAwardResp) GetTaskId() int32 { + if x != nil { + return x.TaskId + } + return 0 +} + +func (x *MoonlvTaskAwardResp) GetReward() []*UserAtno { + if x != nil { + return x.Reward + } + return nil +} + +func (x *MoonlvTaskAwardResp) GetData() *DBMoonLv { + if x != nil { + return x.Data + } + return nil +} + +var File_moonlv_moonlv_msg_proto protoreflect.FileDescriptor + +var file_moonlv_moonlv_msg_proto_rawDesc = []byte{ + 0x0a, 0x17, 0x6d, 0x6f, 0x6f, 0x6e, 0x6c, 0x76, 0x2f, 0x6d, 0x6f, 0x6f, 0x6e, 0x6c, 0x76, 0x5f, + 0x6d, 0x73, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x16, 0x6d, 0x6f, 0x6f, 0x6e, 0x6c, + 0x76, 0x2f, 0x6d, 0x6f, 0x6f, 0x6e, 0x6c, 0x76, 0x5f, 0x64, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x1a, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x12, 0x0a, + 0x10, 0x4d, 0x6f, 0x6f, 0x6e, 0x6c, 0x76, 0x47, 0x65, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, + 0x71, 0x22, 0x32, 0x0a, 0x11, 0x4d, 0x6f, 0x6f, 0x6e, 0x6c, 0x76, 0x47, 0x65, 0x74, 0x4c, 0x69, + 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1d, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x44, 0x42, 0x4d, 0x6f, 0x6f, 0x6e, 0x4c, 0x76, 0x52, + 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x20, 0x0a, 0x0e, 0x4d, 0x6f, 0x6f, 0x6e, 0x6c, 0x76, 0x41, + 0x77, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x12, 0x0e, 0x0a, 0x02, 0x6c, 0x76, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x02, 0x6c, 0x76, 0x22, 0x4f, 0x0a, 0x0f, 0x4d, 0x6f, 0x6f, 0x6e, 0x6c, + 0x76, 0x41, 0x77, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1d, 0x0a, 0x04, 0x64, 0x61, + 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x44, 0x42, 0x4d, 0x6f, 0x6f, + 0x6e, 0x4c, 0x76, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x1d, 0x0a, 0x03, 0x72, 0x65, 0x73, + 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x41, 0x73, 0x73, + 0x65, 0x74, 0x73, 0x52, 0x03, 0x72, 0x65, 0x73, 0x22, 0x2c, 0x0a, 0x12, 0x4d, 0x6f, 0x6f, 0x6e, + 0x6c, 0x76, 0x54, 0x61, 0x73, 0x6b, 0x41, 0x77, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x12, 0x16, + 0x0a, 0x06, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, + 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x22, 0x6f, 0x0a, 0x13, 0x4d, 0x6f, 0x6f, 0x6e, 0x6c, 0x76, + 0x54, 0x61, 0x73, 0x6b, 0x41, 0x77, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x16, 0x0a, + 0x06, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x74, + 0x61, 0x73, 0x6b, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x06, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x18, + 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x41, 0x74, 0x6e, 0x6f, + 0x52, 0x06, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x12, 0x1d, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x44, 0x42, 0x4d, 0x6f, 0x6f, 0x6e, 0x4c, + 0x76, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, + 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, +} + +var ( + file_moonlv_moonlv_msg_proto_rawDescOnce sync.Once + file_moonlv_moonlv_msg_proto_rawDescData = file_moonlv_moonlv_msg_proto_rawDesc +) + +func file_moonlv_moonlv_msg_proto_rawDescGZIP() []byte { + file_moonlv_moonlv_msg_proto_rawDescOnce.Do(func() { + file_moonlv_moonlv_msg_proto_rawDescData = protoimpl.X.CompressGZIP(file_moonlv_moonlv_msg_proto_rawDescData) + }) + return file_moonlv_moonlv_msg_proto_rawDescData +} + +var file_moonlv_moonlv_msg_proto_msgTypes = make([]protoimpl.MessageInfo, 6) +var file_moonlv_moonlv_msg_proto_goTypes = []interface{}{ + (*MoonlvGetListReq)(nil), // 0: MoonlvGetListReq + (*MoonlvGetListResp)(nil), // 1: MoonlvGetListResp + (*MoonlvAwardReq)(nil), // 2: MoonlvAwardReq + (*MoonlvAwardResp)(nil), // 3: MoonlvAwardResp + (*MoonlvTaskAwardReq)(nil), // 4: MoonlvTaskAwardReq + (*MoonlvTaskAwardResp)(nil), // 5: MoonlvTaskAwardResp + (*DBMoonLv)(nil), // 6: DBMoonLv + (*UserAssets)(nil), // 7: UserAssets + (*UserAtno)(nil), // 8: UserAtno +} +var file_moonlv_moonlv_msg_proto_depIdxs = []int32{ + 6, // 0: MoonlvGetListResp.data:type_name -> DBMoonLv + 6, // 1: MoonlvAwardResp.data:type_name -> DBMoonLv + 7, // 2: MoonlvAwardResp.res:type_name -> UserAssets + 8, // 3: MoonlvTaskAwardResp.reward:type_name -> UserAtno + 6, // 4: MoonlvTaskAwardResp.data:type_name -> DBMoonLv + 5, // [5:5] is the sub-list for method output_type + 5, // [5:5] is the sub-list for method input_type + 5, // [5:5] is the sub-list for extension type_name + 5, // [5:5] is the sub-list for extension extendee + 0, // [0:5] is the sub-list for field type_name +} + +func init() { file_moonlv_moonlv_msg_proto_init() } +func file_moonlv_moonlv_msg_proto_init() { + if File_moonlv_moonlv_msg_proto != nil { + return + } + file_moonlv_moonlv_db_proto_init() + file_comm_proto_init() + if !protoimpl.UnsafeEnabled { + file_moonlv_moonlv_msg_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MoonlvGetListReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_moonlv_moonlv_msg_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MoonlvGetListResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_moonlv_moonlv_msg_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MoonlvAwardReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_moonlv_moonlv_msg_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MoonlvAwardResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_moonlv_moonlv_msg_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MoonlvTaskAwardReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_moonlv_moonlv_msg_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MoonlvTaskAwardResp); 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{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_moonlv_moonlv_msg_proto_rawDesc, + NumEnums: 0, + NumMessages: 6, + NumExtensions: 0, + NumServices: 0, + }, + GoTypes: file_moonlv_moonlv_msg_proto_goTypes, + DependencyIndexes: file_moonlv_moonlv_msg_proto_depIdxs, + MessageInfos: file_moonlv_moonlv_msg_proto_msgTypes, + }.Build() + File_moonlv_moonlv_msg_proto = out.File + file_moonlv_moonlv_msg_proto_rawDesc = nil + file_moonlv_moonlv_msg_proto_goTypes = nil + file_moonlv_moonlv_msg_proto_depIdxs = nil +} From 0fa6eb740626e2263f7dc55e23e455dd99fcda78 Mon Sep 17 00:00:00 2001 From: meixiongfeng <766881921@qq.com> Date: Tue, 14 Nov 2023 15:01:33 +0800 Subject: [PATCH 3/5] =?UTF-8?q?=E6=8A=A4=E6=9C=88=E7=AD=89=E7=BA=A7?= =?UTF-8?q?=E9=85=8D=E7=BD=AE=E8=A7=A3=E6=9E=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- bin/json/game_guide.json | 516 +------ bin/json/game_mail.json | 17 +- bin/json/game_moonlv.json | 53 + bin/json/game_moontask.json | 272 ++++ bin/json/game_opencond.json | 24 +- bin/json/game_rdtasknpc.json | 25 +- bin/json/game_worldtask.json | 1450 +++++++++++-------- modules/moonlv/comp_configure.go | 47 +- modules/moonlv/module.go | 6 + sys/configure/structs/Game.MoonLv.go | 42 + sys/configure/structs/Game.MoonLvData.go | 54 + sys/configure/structs/Game.MoonTask.go | 42 + sys/configure/structs/Game.MoonTaskData.go | 56 + sys/configure/structs/Game.WorldTaskData.go | 2 + sys/configure/structs/Tables.go | 14 + 15 files changed, 1467 insertions(+), 1153 deletions(-) create mode 100644 bin/json/game_moonlv.json create mode 100644 bin/json/game_moontask.json create mode 100644 sys/configure/structs/Game.MoonLv.go create mode 100644 sys/configure/structs/Game.MoonLvData.go create mode 100644 sys/configure/structs/Game.MoonTask.go create mode 100644 sys/configure/structs/Game.MoonTaskData.go diff --git a/bin/json/game_guide.json b/bin/json/game_guide.json index b9b7b94f8..b74ce93f7 100644 --- a/bin/json/game_guide.json +++ b/bin/json/game_guide.json @@ -7,7 +7,7 @@ "parameter": "", "interface": "", "condition": "worldtaskexit_accept_20010", - "followtj": "OpenNpcOption_主线入口_原石", + "followtj": "", "followguide": 1000102, "finger": [ "taskDedailsPopup", @@ -40,174 +40,21 @@ { "id": 1000102, "group": 1, - "type": 3, + "type": 5, "startPar": "", "parameter": "", "interface": "", "condition": "", - "followtj": "", + "followtj": "JpystickMove", "followguide": 0, "finger": [ - "command", - "mainCom$.optionList$", - "0" + "joystick" ], "offset": { "x": 0, "y": 0 }, - "fingerTime": 0, - "objSize": { - "x": 0, - "y": 0 - }, - "objOffset": { - "x": 0, - "y": 0 - }, - "txt": "", - "speakerface": 0, - "sound": "", - "mask": 0, - "lock": 0, - "uishow": 0, - "skiptime": 5000, - "skip": 0, - "skipgroup": 0, - "reward": [] - }, - { - "id": 1000201, - "group": 2, - "type": 3, - "startPar": "", - "parameter": "", - "interface": "", - "condition": "worldtasksubfinish_20010", - "followtj": "OpenNpcOption_20010_熊猫_1", - "followguide": 1000202, - "finger": [ - "command", - "mainCom$.taskpanel$.mainTaskList.tasklist$", - "0" - ], - "offset": { - "x": 0, - "y": 0 - }, - "fingerTime": 0.1, - "objSize": { - "x": 0, - "y": 0 - }, - "objOffset": { - "x": 0, - "y": 0 - }, - "txt": "", - "speakerface": 0, - "sound": "", - "mask": 0, - "lock": 0, - "uishow": 0, - "skiptime": 5000, - "skip": 0, - "skipgroup": 0, - "reward": [] - }, - { - "id": 1000202, - "group": 2, - "type": 3, - "startPar": "", - "parameter": "", - "interface": "", - "condition": "", - "followtj": "", - "followguide": 0, - "finger": [ - "command", - "mainCom$.optionList$", - "0" - ], - "offset": { - "x": 0, - "y": 0 - }, - "fingerTime": 0, - "objSize": { - "x": 0, - "y": 0 - }, - "objOffset": { - "x": 0, - "y": 0 - }, - "txt": "", - "speakerface": 0, - "sound": "", - "mask": 0, - "lock": 0, - "uishow": 0, - "skiptime": 5000, - "skip": 0, - "skipgroup": 0, - "reward": [] - }, - { - "id": 1000301, - "group": 3, - "type": 3, - "startPar": "", - "parameter": "", - "interface": "", - "condition": "worldtaskexit_submit_20010", - "followtj": "TriggerQuest_20012", - "followguide": 1000302, - "finger": [ - "taskDedailsPopup", - "btn_star$" - ], - "offset": { - "x": 0, - "y": 0 - }, - "fingerTime": 0, - "objSize": { - "x": 0, - "y": 0 - }, - "objOffset": { - "x": 0, - "y": 0 - }, - "txt": "", - "speakerface": 0, - "sound": "", - "mask": 0, - "lock": 0, - "uishow": 0, - "skiptime": 5000, - "skip": 0, - "skipgroup": 0, - "reward": [] - }, - { - "id": 1000302, - "group": 3, - "type": 3, - "startPar": "", - "parameter": "", - "interface": "", - "condition": "", - "followtj": "CloseItemPopup", - "followguide": 1000303, - "finger": [], - "offset": { - "x": 0, - "y": 0 - }, - "fingerTime": 0, + "fingerTime": 0.5, "objSize": { "x": 0, "y": 0 @@ -222,358 +69,7 @@ "mask": 1, "lock": 1, "uishow": 0, - "skiptime": 5000, - "skip": 0, - "skipgroup": 0, - "reward": [] - }, - { - "id": 1000303, - "group": 3, - "type": 3, - "startPar": "", - "parameter": "", - "interface": "", - "condition": "", - "followtj": "OpenNpcOption_20020_熊猫_船甲板", - "followguide": 1000304, - "finger": [ - "command", - "mainCom$.taskpanel$.mainTaskList.tasklist$", - "0" - ], - "offset": { - "x": 0, - "y": 0 - }, - "fingerTime": 0.1, - "objSize": { - "x": 0, - "y": 0 - }, - "objOffset": { - "x": 0, - "y": 0 - }, - "txt": "", - "speakerface": 0, - "sound": "", - "mask": 0, - "lock": 0, - "uishow": 0, - "skiptime": 5000, - "skip": 0, - "skipgroup": 0, - "reward": [] - }, - { - "id": 1000304, - "group": 3, - "type": 3, - "startPar": "", - "parameter": "", - "interface": "", - "condition": "", - "followtj": "", - "followguide": 0, - "finger": [ - "maininterface", - "mainCom$.optionList$", - "0" - ], - "offset": { - "x": 0, - "y": 0 - }, - "fingerTime": 0, - "objSize": { - "x": 0, - "y": 0 - }, - "objOffset": { - "x": 0, - "y": 0 - }, - "txt": "", - "speakerface": 0, - "sound": "", - "mask": 0, - "lock": 0, - "uishow": 0, - "skiptime": 5000, - "skip": 0, - "skipgroup": 0, - "reward": [] - }, - { - "id": 1000401, - "group": 4, - "type": 3, - "startPar": "", - "parameter": "", - "interface": "", - "condition": "worldtaskexit_accept_20012", - "followtj": "OpenNpcOption_20020_小怪_船甲板", - "followguide": 1000402, - "finger": [ - "taskDedailsPopup", - "btn_star$" - ], - "offset": { - "x": 0, - "y": 0 - }, - "fingerTime": 0, - "objSize": { - "x": 0, - "y": 0 - }, - "objOffset": { - "x": 0, - "y": 0 - }, - "txt": "", - "speakerface": 0, - "sound": "", - "mask": 0, - "lock": 0, - "uishow": 0, - "skiptime": 5000, - "skip": 0, - "skipgroup": 0, - "reward": [] - }, - { - "id": 1000402, - "group": 4, - "type": 3, - "startPar": "", - "parameter": "", - "interface": "", - "condition": "", - "followtj": "", - "followguide": 1000403, - "finger": [ - "maininterface", - "mainCom$.optionList$", - "0" - ], - "offset": { - "x": 0, - "y": 0 - }, - "fingerTime": 0, - "objSize": { - "x": 0, - "y": 0 - }, - "objOffset": { - "x": 0, - "y": 0 - }, - "txt": "", - "speakerface": 0, - "sound": "", - "mask": 0, - "lock": 0, - "uishow": 0, - "skiptime": 5000, - "skip": 0, - "skipgroup": 0, - "reward": [] - }, - { - "id": 1000403, - "group": 4, - "type": 3, - "startPar": "", - "parameter": "", - "interface": "", - "condition": "", - "followtj": "OpenFight", - "followguide": 1000404, - "finger": [ - "battleready", - "btn_start$", - "0" - ], - "offset": { - "x": 0, - "y": 0 - }, - "fingerTime": 0, - "objSize": { - "x": 0, - "y": 0 - }, - "objOffset": { - "x": 0, - "y": 0 - }, - "txt": "1000102", - "speakerface": 0, - "sound": "", - "mask": 0, - "lock": 0, - "uishow": 0, - "skiptime": 5000, - "skip": 0, - "skipgroup": 0, - "reward": [] - }, - { - "id": 1000404, - "group": 4, - "type": 3, - "startPar": "", - "parameter": "", - "interface": "", - "condition": "", - "followtj": "", - "followguide": 0, - "finger": [ - "zhandou", - "skilllist$", - "2", - "skillbtn" - ], - "offset": { - "x": 0, - "y": 0 - }, - "fingerTime": 0.3, - "objSize": { - "x": 0, - "y": 0 - }, - "objOffset": { - "x": 0, - "y": 0 - }, - "txt": "1000201", - "speakerface": 0, - "sound": "", - "mask": 0, - "lock": 0, - "uishow": 0, - "skiptime": 5000, - "skip": 0, - "skipgroup": 0, - "reward": [] - }, - { - "id": 1001001, - "group": 10, - "type": 3, - "startPar": "", - "parameter": "", - "interface": "", - "condition": "worldtaskexit_accept_20050", - "followtj": "", - "followguide": 1001002, - "finger": [ - "taskDedailsPopup", - "btn_star$", - "0" - ], - "offset": { - "x": 0, - "y": 0 - }, - "fingerTime": 0, - "objSize": { - "x": 0, - "y": 0 - }, - "objOffset": { - "x": 0, - "y": 0 - }, - "txt": "", - "speakerface": 0, - "sound": "", - "mask": 0, - "lock": 0, - "uishow": 0, - "skiptime": 5000, - "skip": 0, - "skipgroup": 0, - "reward": [] - }, - { - "id": 1001002, - "group": 10, - "type": 3, - "startPar": "", - "parameter": "", - "interface": "", - "condition": "", - "followtj": "", - "followguide": 0, - "finger": [ - "maininterface", - "btn_compass$", - "0" - ], - "offset": { - "x": 0, - "y": 0 - }, - "fingerTime": 0, - "objSize": { - "x": 0, - "y": 0 - }, - "objOffset": { - "x": 0, - "y": 0 - }, - "txt": "", - "speakerface": 0, - "sound": "", - "mask": 1, - "lock": 1, - "uishow": 0, - "skiptime": 5000, - "skip": 0, - "skipgroup": 0, - "reward": [] - }, - { - "id": 2000101, - "group": 101, - "type": 3, - "startPar": "", - "parameter": "", - "interface": "", - "condition": "OpenRecruit", - "followtj": "", - "followguide": 0, - "finger": [ - "recruit", - "btn_onedraw$", - "0" - ], - "offset": { - "x": 0, - "y": 0 - }, - "fingerTime": 0, - "objSize": { - "x": 0, - "y": 0 - }, - "objOffset": { - "x": 0, - "y": 0 - }, - "txt": "1000202", - "speakerface": 0, - "sound": "", - "mask": 0, - "lock": 0, - "uishow": 0, - "skiptime": 5000, + "skiptime": 10000, "skip": 0, "skipgroup": 0, "reward": [] diff --git a/bin/json/game_mail.json b/bin/json/game_mail.json index 80f741fe9..eb5d95367 100644 --- a/bin/json/game_mail.json +++ b/bin/json/game_mail.json @@ -231,7 +231,22 @@ { "a": "attr", "t": "diamond", - "n": 50 + "n": 1000 + }, + { + "a": "item", + "t": "10000008", + "n": 10 + }, + { + "a": "item", + "t": "10000009", + "n": 10 + }, + { + "a": "item", + "t": "10000010", + "n": 5 } ], "duration": 720 diff --git a/bin/json/game_moonlv.json b/bin/json/game_moonlv.json new file mode 100644 index 000000000..9f5dc2c67 --- /dev/null +++ b/bin/json/game_moonlv.json @@ -0,0 +1,53 @@ +[ + { + "Id": 1, + "Level": 1, + "TaskGroupId": 10001, + "Reward": [ + { + "a": "item", + "t": "10000001", + "n": 5 + }, + { + "a": "attr", + "t": "starcoin", + "n": 20 + } + ] + }, + { + "Id": 2, + "Level": 2, + "TaskGroupId": 10002, + "Reward": [ + { + "a": "item", + "t": "10000001", + "n": 5 + }, + { + "a": "attr", + "t": "starcoin", + "n": 20 + } + ] + }, + { + "Id": 3, + "Level": 3, + "TaskGroupId": 10003, + "Reward": [ + { + "a": "item", + "t": "10000001", + "n": 5 + }, + { + "a": "attr", + "t": "starcoin", + "n": 20 + } + ] + } +] \ No newline at end of file diff --git a/bin/json/game_moontask.json b/bin/json/game_moontask.json new file mode 100644 index 000000000..f882785f3 --- /dev/null +++ b/bin/json/game_moontask.json @@ -0,0 +1,272 @@ +[ + { + "Id": 1, + "TaskGroup": 1001, + "TaskId": 110001, + "TaskReward": [ + { + "a": "attr", + "t": "gold", + "n": 5000 + }, + { + "a": "item", + "t": "10000001", + "n": 10 + } + ], + "JumpFunction": 0 + }, + { + "Id": 2, + "TaskGroup": 1001, + "TaskId": 110003, + "TaskReward": [ + { + "a": "attr", + "t": "gold", + "n": 5000 + }, + { + "a": "item", + "t": "10000001", + "n": 10 + } + ], + "JumpFunction": 0 + }, + { + "Id": 3, + "TaskGroup": 1001, + "TaskId": 110004, + "TaskReward": [ + { + "a": "attr", + "t": "gold", + "n": 5000 + }, + { + "a": "item", + "t": "10000001", + "n": 10 + } + ], + "JumpFunction": 0 + }, + { + "Id": 4, + "TaskGroup": 1001, + "TaskId": 110005, + "TaskReward": [ + { + "a": "attr", + "t": "gold", + "n": 5000 + }, + { + "a": "item", + "t": "10000001", + "n": 10 + } + ], + "JumpFunction": 0 + }, + { + "Id": 5, + "TaskGroup": 1001, + "TaskId": 110006, + "TaskReward": [ + { + "a": "attr", + "t": "gold", + "n": 5000 + }, + { + "a": "item", + "t": "10000001", + "n": 10 + } + ], + "JumpFunction": 0 + }, + { + "Id": 6, + "TaskGroup": 1001, + "TaskId": 110007, + "TaskReward": [ + { + "a": "attr", + "t": "gold", + "n": 5000 + }, + { + "a": "item", + "t": "10000001", + "n": 10 + } + ], + "JumpFunction": 0 + }, + { + "Id": 7, + "TaskGroup": 1002, + "TaskId": 110008, + "TaskReward": [ + { + "a": "attr", + "t": "gold", + "n": 5000 + }, + { + "a": "item", + "t": "10000001", + "n": 10 + } + ], + "JumpFunction": 0 + }, + { + "Id": 8, + "TaskGroup": 1002, + "TaskId": 110009, + "TaskReward": [ + { + "a": "attr", + "t": "gold", + "n": 5000 + }, + { + "a": "item", + "t": "10000001", + "n": 10 + } + ], + "JumpFunction": 0 + }, + { + "Id": 9, + "TaskGroup": 1002, + "TaskId": 110010, + "TaskReward": [ + { + "a": "attr", + "t": "gold", + "n": 5000 + }, + { + "a": "item", + "t": "10000001", + "n": 10 + } + ], + "JumpFunction": 0 + }, + { + "Id": 10, + "TaskGroup": 1002, + "TaskId": 110012, + "TaskReward": [ + { + "a": "attr", + "t": "gold", + "n": 5000 + }, + { + "a": "item", + "t": "10000001", + "n": 10 + } + ], + "JumpFunction": 0 + }, + { + "Id": 11, + "TaskGroup": 1002, + "TaskId": 110013, + "TaskReward": [ + { + "a": "attr", + "t": "gold", + "n": 5000 + }, + { + "a": "item", + "t": "10000001", + "n": 10 + } + ], + "JumpFunction": 0 + }, + { + "Id": 12, + "TaskGroup": 1003, + "TaskId": 110014, + "TaskReward": [ + { + "a": "attr", + "t": "gold", + "n": 5000 + }, + { + "a": "item", + "t": "10000001", + "n": 10 + } + ], + "JumpFunction": 0 + }, + { + "Id": 13, + "TaskGroup": 1003, + "TaskId": 110015, + "TaskReward": [ + { + "a": "attr", + "t": "gold", + "n": 5000 + }, + { + "a": "item", + "t": "10000001", + "n": 10 + } + ], + "JumpFunction": 0 + }, + { + "Id": 14, + "TaskGroup": 1003, + "TaskId": 110016, + "TaskReward": [ + { + "a": "attr", + "t": "gold", + "n": 5000 + }, + { + "a": "item", + "t": "10000001", + "n": 10 + } + ], + "JumpFunction": 0 + }, + { + "Id": 15, + "TaskGroup": 1003, + "TaskId": 110017, + "TaskReward": [ + { + "a": "attr", + "t": "gold", + "n": 5000 + }, + { + "a": "item", + "t": "10000001", + "n": 10 + } + ], + "JumpFunction": 0 + } +] \ No newline at end of file diff --git a/bin/json/game_opencond.json b/bin/json/game_opencond.json index a65ee6b95..ceb8b9d69 100644 --- a/bin/json/game_opencond.json +++ b/bin/json/game_opencond.json @@ -7,8 +7,8 @@ }, "main": [ { - "key": 1, - "param": 1 + "key": 3, + "param": 20031 } ], "wkqbx": 2, @@ -61,8 +61,8 @@ }, "main": [ { - "key": 1, - "param": 1 + "key": 3, + "param": 20034 } ], "wkqbx": 2, @@ -142,8 +142,8 @@ }, "main": [ { - "key": 1, - "param": 1 + "key": 3, + "param": 20034 } ], "wkqbx": 2, @@ -304,8 +304,8 @@ }, "main": [ { - "key": 1, - "param": 1 + "key": 3, + "param": 20032 } ], "wkqbx": 2, @@ -1492,8 +1492,8 @@ }, "main": [ { - "key": 1, - "param": 1 + "key": 3, + "param": 20033 } ], "wkqbx": 2, @@ -2349,8 +2349,8 @@ }, "main": [ { - "key": 1, - "param": 1 + "key": 3, + "param": 20050 } ], "wkqbx": 0, diff --git a/bin/json/game_rdtasknpc.json b/bin/json/game_rdtasknpc.json index f4b290410..ac035b9af 100644 --- a/bin/json/game_rdtasknpc.json +++ b/bin/json/game_rdtasknpc.json @@ -365,7 +365,7 @@ "Levelid": 0, "datas": [ "GameMain", - "梅林", + "20012_梅林_船甲板", "901" ], "event": [ @@ -380,7 +380,7 @@ "Levelid": 0, "datas": [ "GameMain", - "20020_小怪_船甲板1", + "20020_小怪_船甲板", "901" ], "event": [ @@ -410,7 +410,7 @@ "Levelid": 0, "datas": [ "GameMain", - "20060-乌龟大师", + "功能入口-招募", "901" ], "event": [ @@ -609,8 +609,8 @@ "901" ], "event": [ - 2, - 10100 + 1, + 103 ], "goto": 0 }, @@ -629,6 +629,21 @@ ], "goto": 0 }, + { + "id": 200341, + "heroid": 45001, + "Levelid": 0, + "datas": [ + "GameMain", + "功能入口-烹饪", + "901" + ], + "event": [ + 2, + 10100 + ], + "goto": 0 + }, { "id": 100421, "heroid": 35002, diff --git a/bin/json/game_worldtask.json b/bin/json/game_worldtask.json index 51d6578ee..463137f9b 100644 --- a/bin/json/game_worldtask.json +++ b/bin/json/game_worldtask.json @@ -32,32 +32,19 @@ "deliver_npc": 10018, "taskend_removeitem": [], "auto_accept": 1, - "tasktips": 1, + "tasktips": 0, "lock_add": 0, - "finish": [], - "fnishipoint": [], - "reword": [ - { - "a": "attr", - "t": "gold", - "n": 10000 - }, - { - "a": "item", - "t": "10000008", - "n": 3 - }, - { - "a": "attr", - "t": "diamond", - "n": 20 - }, - { - "a": "title", - "t": "10001", - "n": 1 - } + "finish": [ + 1, + 101 ], + "finishparameter": "timeline_target_cut01", + "fnishipoint": [ + "GameMain", + "出生点-指挥部", + "901" + ], + "reword": [], "module": [] }, { @@ -96,6 +83,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [], "module": [] @@ -135,24 +123,9 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], - "reword": [ - { - "a": "attr", - "t": "gold", - "n": 10000 - }, - { - "a": "item", - "t": "10000008", - "n": 3 - }, - { - "a": "attr", - "t": "diamond", - "n": 20 - } - ], + "reword": [], "module": [] }, { @@ -161,7 +134,7 @@ "lock": 1, "lockend": 999, "ontxe": 20020, - "id_after": 20041, + "id_after": 20031, "group": 10, "exgroup": 210, "des": 2, @@ -191,8 +164,15 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], - "reword": [], + "reword": [ + { + "a": "item", + "t": "10000001", + "n": 1 + } + ], "module": [] }, { @@ -201,7 +181,7 @@ "lock": 1, "lockend": 999, "ontxe": 20030, - "id_after": 20042, + "id_after": 20032, "group": 10, "exgroup": 210, "des": 2, @@ -234,6 +214,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -250,6 +231,11 @@ "a": "attr", "t": "diamond", "n": 20 + }, + { + "a": "hero", + "t": "25001", + "n": 1 } ], "module": [] @@ -259,8 +245,8 @@ "opencond": "", "lock": 1, "lockend": 999, - "ontxe": 0, - "id_after": 0, + "ontxe": 20031, + "id_after": 20033, "group": 10, "exgroup": 210, "des": 2, @@ -289,8 +275,25 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], - "reword": [], + "reword": [ + { + "a": "attr", + "t": "gold", + "n": 10000 + }, + { + "a": "item", + "t": "10000008", + "n": 3 + }, + { + "a": "attr", + "t": "diamond", + "n": 20 + } + ], "module": [] }, { @@ -298,27 +301,65 @@ "opencond": "", "lock": 1, "lockend": 999, - "ontxe": 0, - "id_after": 0, + "ontxe": 20032, + "id_after": 20034, "group": 10, "exgroup": 210, "des": 2, "icon": "25005", "task_name": { "key": "worldtask_world_task_task_name_7", - "text": "吃面战斗2场+起名" + "text": "饭后战斗消化" }, "task_details": { "key": "worldtask_world_task_task_details_7", - "text": "吃面战斗2场+起名" + "text": "饭前邮件取钱" }, "npctxt": { "key": "worldtask_world_task_npctxt_7", - "text": "吃面战斗2场+起名" + "text": "饭前邮件取钱" }, "get_item": [], "trigger": 0, "npc": 200331, + "completetask": [], + "deliver_npc": 0, + "taskend_removeitem": [], + "auto_accept": 0, + "tasktips": 0, + "lock_add": 0, + "finish": [], + "finishparameter": "", + "fnishipoint": [], + "reword": [], + "module": [] + }, + { + "key": 20034, + "opencond": "", + "lock": 1, + "lockend": 999, + "ontxe": 20033, + "id_after": 20042, + "group": 10, + "exgroup": 210, + "des": 2, + "icon": "25005", + "task_name": { + "key": "worldtask_world_task_task_name_8", + "text": "饭后战斗消化" + }, + "task_details": { + "key": "worldtask_world_task_task_details_8", + "text": "饭后战斗消化" + }, + "npctxt": { + "key": "worldtask_world_task_npctxt_8", + "text": "饭后战斗消化" + }, + "get_item": [], + "trigger": 0, + "npc": 200341, "completetask": [ 12070035 ], @@ -328,6 +369,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [], "module": [] @@ -337,22 +379,22 @@ "opencond": "", "lock": 1, "lockend": 999, - "ontxe": 20041, + "ontxe": 20034, "id_after": 20050, "group": 10, "exgroup": 210, "des": 2, "icon": "25006", "task_name": { - "key": "worldtask_world_task_task_name_8", + "key": "worldtask_world_task_task_name_9", "text": "黑龙与龙骑士" }, "task_details": { - "key": "worldtask_world_task_task_details_8", + "key": "worldtask_world_task_task_details_9", "text": "名为无牙仔的黑龙载着一名龙骑士从天而降,同时还有更多的恐惧灵紧随而来,快击败他们!" }, "npctxt": { - "key": "worldtask_world_task_npctxt_8", + "key": "worldtask_world_task_npctxt_9", "text": "击退恐惧灵" }, "get_item": [], @@ -367,6 +409,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -399,15 +442,15 @@ "des": 2, "icon": "25008", "task_name": { - "key": "worldtask_world_task_task_name_9", + "key": "worldtask_world_task_task_name_10", "text": "救治希卡普" }, "task_details": { - "key": "worldtask_world_task_task_details_9", + "key": "worldtask_world_task_task_details_10", "text": "希卡普重伤昏迷,前往魔药区找菲奥娜为其医治。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_9", + "key": "worldtask_world_task_npctxt_10", "text": "寻找菲奥娜" }, "get_item": [], @@ -422,6 +465,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -464,15 +508,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_10", + "key": "worldtask_world_task_task_name_11", "text": "初探博克岛" }, "task_details": { - "key": "worldtask_world_task_task_details_10", + "key": "worldtask_world_task_task_details_11", "text": "在菲奥娜和阿宝的建议下,决定前往博克岛寻找解毒剂。然而却遭到村民的袭击。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_10", + "key": "worldtask_world_task_npctxt_11", "text": "和菲奥娜聊聊" }, "get_item": [], @@ -487,6 +531,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [], "module": [] @@ -503,15 +548,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_11", + "key": "worldtask_world_task_task_name_12", "text": "圣根是什么" }, "task_details": { - "key": "worldtask_world_task_task_details_11", + "key": "worldtask_world_task_task_details_12", "text": "在亚丝翠的帮助下,我们得知解毒剂的真面目。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_11", + "key": "worldtask_world_task_npctxt_12", "text": "圣根是什么" }, "get_item": [], @@ -526,6 +571,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [], "module": [] @@ -542,15 +588,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_12", + "key": "worldtask_world_task_task_name_13", "text": "寻找龙之花" }, "task_details": { - "key": "worldtask_world_task_task_details_12", + "key": "worldtask_world_task_task_details_13", "text": "龙遗香竟是……然而为了救希卡普也只能这么做了!先要找到龙之花。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_12", + "key": "worldtask_world_task_npctxt_13", "text": "寻找龙之花" }, "get_item": [], @@ -565,6 +611,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [], "module": [] @@ -581,15 +628,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_13", + "key": "worldtask_world_task_task_name_14", "text": "获得龙遗香" }, "task_details": { - "key": "worldtask_world_task_task_details_13", + "key": "worldtask_world_task_task_details_14", "text": "总算找到龙之花了,下面就是将它喂给龙吃下,可是钩牙看上去十分抗拒,要怎么办呢?" }, "npctxt": { - "key": "worldtask_world_task_npctxt_13", + "key": "worldtask_world_task_npctxt_14", "text": "获得龙遗香" }, "get_item": [], @@ -604,6 +651,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [], "module": [] @@ -620,15 +668,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_14", + "key": "worldtask_world_task_task_name_15", "text": "希卡普苏醒" }, "task_details": { - "key": "worldtask_world_task_task_details_14", + "key": "worldtask_world_task_task_details_15", "text": "龙遗香味道果然特别……没有时间犹豫了,对不起了希卡普!" }, "npctxt": { - "key": "worldtask_world_task_npctxt_14", + "key": "worldtask_world_task_npctxt_15", "text": "希卡普苏醒" }, "get_item": [], @@ -643,6 +691,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [], "module": [] @@ -659,15 +708,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_15", + "key": "worldtask_world_task_task_name_16", "text": "猎龙团来袭" }, "task_details": { - "key": "worldtask_world_task_task_details_15", + "key": "worldtask_world_task_task_details_16", "text": "可怕的猎龙团来了,为了博客岛的村民,这一次决不能让他们得逞!" }, "npctxt": { - "key": "worldtask_world_task_npctxt_15", + "key": "worldtask_world_task_npctxt_16", "text": "猎龙团来袭" }, "get_item": [], @@ -682,6 +731,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [], "module": [] @@ -698,15 +748,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_16", + "key": "worldtask_world_task_task_name_17", "text": "没有龙的博客岛" }, "task_details": { - "key": "worldtask_world_task_task_details_16", + "key": "worldtask_world_task_task_details_17", "text": "埃雷特竟然背叛了!还掠走了岛上所有的龙,他究竟为何站在了阴影战士那边?!" }, "npctxt": { - "key": "worldtask_world_task_npctxt_16", + "key": "worldtask_world_task_npctxt_17", "text": "没有龙的博客岛" }, "get_item": [], @@ -721,6 +771,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [], "module": [] @@ -737,15 +788,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_17", + "key": "worldtask_world_task_task_name_18", "text": "希卡普的秘密武器" }, "task_details": { - "key": "worldtask_world_task_task_details_17", + "key": "worldtask_world_task_task_details_18", "text": "一定要找到埃雷特,阻止阴影战士的阴谋!但所有的龙都被掠走,可要如何寻找?" }, "npctxt": { - "key": "worldtask_world_task_npctxt_17", + "key": "worldtask_world_task_npctxt_18", "text": "希卡普的秘密武器" }, "get_item": [], @@ -760,6 +811,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [], "module": [] @@ -776,15 +828,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_18", + "key": "worldtask_world_task_task_name_19", "text": "追击埃雷特" }, "task_details": { - "key": "worldtask_world_task_task_details_18", + "key": "worldtask_world_task_task_details_19", "text": "终于将葛伦科训练到可以飞行的程度,虽然风险很高,但也必须前进!" }, "npctxt": { - "key": "worldtask_world_task_npctxt_18", + "key": "worldtask_world_task_npctxt_19", "text": "追击埃雷特" }, "get_item": [], @@ -799,6 +851,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [], "module": [] @@ -815,15 +868,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_19", + "key": "worldtask_world_task_task_name_20", "text": "追击阴影战士" }, "task_details": { - "key": "worldtask_world_task_task_details_19", + "key": "worldtask_world_task_task_details_20", "text": "埃雷特也有他的苦衷,但他的行为我们依然不能原谅。如果阴影战士的目的是复活漆黑,那必须得赶快阻止他!" }, "npctxt": { - "key": "worldtask_world_task_npctxt_19", + "key": "worldtask_world_task_npctxt_20", "text": "追击阴影战士" }, "get_item": [], @@ -838,6 +891,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [], "module": [] @@ -854,15 +908,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_20", + "key": "worldtask_world_task_task_name_21", "text": "神兵!冰霜泰坦" }, "task_details": { - "key": "worldtask_world_task_task_details_20", + "key": "worldtask_world_task_task_details_21", "text": "这一切竟都是阴影战士设的局?对手虽然是神之造物,但我们不能放弃!" }, "npctxt": { - "key": "worldtask_world_task_npctxt_20", + "key": "worldtask_world_task_npctxt_21", "text": "神兵!冰霜泰坦" }, "get_item": [], @@ -877,6 +931,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [], "module": [] @@ -893,15 +948,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_21", + "key": "worldtask_world_task_task_name_22", "text": "胜利的余韵" }, "task_details": { - "key": "worldtask_world_task_task_details_21", + "key": "worldtask_world_task_task_details_22", "text": "阴影战士的阴谋被摧毁,是时候将这个喜讯告诉博客岛的村民们了!" }, "npctxt": { - "key": "worldtask_world_task_npctxt_21", + "key": "worldtask_world_task_npctxt_22", "text": "胜利的余韵" }, "get_item": [], @@ -916,6 +971,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [], "module": [] @@ -932,15 +988,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_22", + "key": "worldtask_world_task_task_name_23", "text": "初试捕羊大赛" }, "task_details": { - "key": "worldtask_world_task_task_details_22", + "key": "worldtask_world_task_task_details_23", "text": "为了庆祝胜利,博客岛上的村民准备举行一场捕羊大赛,我们也参加试试吧?!" }, "npctxt": { - "key": "worldtask_world_task_npctxt_22", + "key": "worldtask_world_task_npctxt_23", "text": "初试捕羊大赛" }, "get_item": [], @@ -955,6 +1011,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [], "module": [] @@ -971,15 +1028,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_23", + "key": "worldtask_world_task_task_name_24", "text": "中轴城危机" }, "task_details": { - "key": "worldtask_world_task_task_details_23", + "key": "worldtask_world_task_task_details_24", "text": "美丽的极光却是危险的信号!中轴城有难,我们必须尽快赶回去!" }, "npctxt": { - "key": "worldtask_world_task_npctxt_23", + "key": "worldtask_world_task_npctxt_24", "text": "中轴城危机" }, "get_item": [], @@ -994,6 +1051,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [], "module": [] @@ -1010,15 +1068,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_24", + "key": "worldtask_world_task_task_name_25", "text": "更深沉的黑暗" }, "task_details": { - "key": "worldtask_world_task_task_details_24", + "key": "worldtask_world_task_task_details_25", "text": "一个危险的存在降临于圣桃树下,我不知道对方究竟是谁,但邦尼兔的神态告诉我,来人的棘手程度或许并不亚于在博克岛上遇到的诸多强敌,甚至更加危险。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_24", + "key": "worldtask_world_task_npctxt_25", "text": "去找阿宝聊聊" }, "get_item": [], @@ -1033,6 +1091,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -1070,15 +1129,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_25", + "key": "worldtask_world_task_task_name_26", "text": "神奇的原始人" }, "task_details": { - "key": "worldtask_world_task_task_details_25", + "key": "worldtask_world_task_task_details_26", "text": "原始人聚集地地广人稀,先找这里的原始人打听打听月光原石的下落吧。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_25", + "key": "worldtask_world_task_npctxt_26", "text": "和阿宝聊聊" }, "get_item": [], @@ -1093,6 +1152,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -1130,15 +1190,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_26", + "key": "worldtask_world_task_task_name_27", "text": "进击!鸟蛋争夺战" }, "task_details": { - "key": "worldtask_world_task_task_details_26", + "key": "worldtask_world_task_task_details_27", "text": "为了知道月光原石所在,得先帮这些原始人抢到鸟蛋。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_26", + "key": "worldtask_world_task_npctxt_27", "text": "和阿宝聊聊" }, "get_item": [], @@ -1153,6 +1213,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [], "module": [] @@ -1169,15 +1230,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_27", + "key": "worldtask_world_task_task_name_28", "text": "不速之客" }, "task_details": { - "key": "worldtask_world_task_task_details_27", + "key": "worldtask_world_task_task_details_28", "text": "终于知道了月光原石的所在,可不曾想竟被食人鱼先生误认成了敌人,得尽快找到他,解除误会。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_27", + "key": "worldtask_world_task_npctxt_28", "text": "和阿宝聊聊" }, "get_item": [], @@ -1192,6 +1253,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [], "module": [] @@ -1208,15 +1270,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_28", + "key": "worldtask_world_task_task_name_29", "text": "月光原石的下落" }, "task_details": { - "key": "worldtask_world_task_task_details_28", + "key": "worldtask_world_task_task_details_29", "text": "终于有了月光原石的线索,跟上小伊去找月光原石吧!" }, "npctxt": { - "key": "worldtask_world_task_npctxt_28", + "key": "worldtask_world_task_npctxt_29", "text": "和阿宝聊聊" }, "get_item": [], @@ -1231,6 +1293,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [], "module": [] @@ -1247,15 +1310,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_29", + "key": "worldtask_world_task_task_name_30", "text": "瓜哥去哪了?" }, "task_details": { - "key": "worldtask_world_task_task_details_29", + "key": "worldtask_world_task_task_details_30", "text": "终于解除了误会,跟随小伊去找月光原石吧!" }, "npctxt": { - "key": "worldtask_world_task_npctxt_29", + "key": "worldtask_world_task_npctxt_30", "text": "和阿宝聊聊" }, "get_item": [], @@ -1270,6 +1333,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [], "module": [] @@ -1286,15 +1350,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_30", + "key": "worldtask_world_task_task_name_31", "text": "瓜哥一家的异状\u00A0" }, "task_details": { - "key": "worldtask_world_task_task_details_30", + "key": "worldtask_world_task_task_details_31", "text": "瓜哥一家不知道为何突然发狂……得赶紧唤醒他们!" }, "npctxt": { - "key": "worldtask_world_task_npctxt_30", + "key": "worldtask_world_task_npctxt_31", "text": "和阿宝聊聊" }, "get_item": [], @@ -1309,6 +1373,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [], "module": [] @@ -1325,15 +1390,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_31", + "key": "worldtask_world_task_task_name_32", "text": "击败巨型猩猩怪" }, "task_details": { - "key": "worldtask_world_task_task_details_31", + "key": "worldtask_world_task_task_details_32", "text": "一切的一切都来源于此,必须打倒猩猩怪拿回月光原石!" }, "npctxt": { - "key": "worldtask_world_task_npctxt_31", + "key": "worldtask_world_task_npctxt_32", "text": "和阿宝聊聊" }, "get_item": [], @@ -1348,6 +1413,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [], "module": [] @@ -1364,15 +1430,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_32", + "key": "worldtask_world_task_task_name_33", "text": "回收月光原石" }, "task_details": { - "key": "worldtask_world_task_task_details_32", + "key": "worldtask_world_task_task_details_33", "text": "原始人聚集地的风波结束,是时候回到中轴城复命了。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_32", + "key": "worldtask_world_task_npctxt_33", "text": "和阿宝聊聊" }, "get_item": [], @@ -1387,6 +1453,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [], "module": [] @@ -1403,15 +1470,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_33", + "key": "worldtask_world_task_task_name_34", "text": "升级设备" }, "task_details": { - "key": "worldtask_world_task_task_details_33", + "key": "worldtask_world_task_task_details_34", "text": "事情搞了一段落,接下来我们需要一些能强化力量的方法" }, "npctxt": { - "key": "worldtask_world_task_npctxt_33", + "key": "worldtask_world_task_npctxt_34", "text": "和骇客蜘聊聊" }, "get_item": [], @@ -1426,6 +1493,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -1463,15 +1531,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_34", + "key": "worldtask_world_task_task_name_35", "text": "堡垒风波" }, "task_details": { - "key": "worldtask_world_task_task_details_34", + "key": "worldtask_world_task_task_details_35", "text": "为了顺利接应坏蛋联盟的伙伴,先找到邦尼兔吧!" }, "npctxt": { - "key": "worldtask_world_task_npctxt_34", + "key": "worldtask_world_task_npctxt_35", "text": "和骇客蜘聊聊" }, "get_item": [], @@ -1486,6 +1554,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -1523,15 +1592,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_35", + "key": "worldtask_world_task_task_name_36", "text": "初遇坏蛋联盟" }, "task_details": { - "key": "worldtask_world_task_task_details_35", + "key": "worldtask_world_task_task_details_36", "text": "邦尼兔因紧急情况离开,接应坏蛋联盟的重任只能一人完成了……" }, "npctxt": { - "key": "worldtask_world_task_npctxt_35", + "key": "worldtask_world_task_npctxt_36", "text": "和骇客蜘聊聊" }, "get_item": [], @@ -1546,6 +1615,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [], "module": [] @@ -1562,15 +1632,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_36", + "key": "worldtask_world_task_task_name_37", "text": "警长的阻挠" }, "task_details": { - "key": "worldtask_world_task_task_details_36", + "key": "worldtask_world_task_task_details_37", "text": "运送月光原石途中遇到坏蛋联盟死对头——警长,没办法,必须尽快通过。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_36", + "key": "worldtask_world_task_npctxt_37", "text": "和骇客蜘聊聊" }, "get_item": [], @@ -1585,6 +1655,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [], "module": [] @@ -1601,15 +1672,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_37", + "key": "worldtask_world_task_task_name_38", "text": "前往卡梅洛特城堡" }, "task_details": { - "key": "worldtask_world_task_task_details_37", + "key": "worldtask_world_task_task_details_38", "text": "虽然遇到了一些意外,但并无大碍,继续向卡梅洛特城堡进发吧。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_37", + "key": "worldtask_world_task_npctxt_38", "text": "和骇客蜘聊聊" }, "get_item": [], @@ -1624,6 +1695,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [], "module": [] @@ -1640,15 +1712,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_38", + "key": "worldtask_world_task_task_name_39", "text": "追击果酱教授" }, "task_details": { - "key": "worldtask_world_task_task_details_38", + "key": "worldtask_world_task_task_details_39", "text": "没想到救下的老奶奶竟是果酱教授假扮的!必须抓住他。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_38", + "key": "worldtask_world_task_npctxt_39", "text": "和骇客蜘聊聊" }, "get_item": [], @@ -1663,6 +1735,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [], "module": [] @@ -1679,15 +1752,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_39", + "key": "worldtask_world_task_task_name_40", "text": "通缉果酱教授" }, "task_details": { - "key": "worldtask_world_task_task_details_39", + "key": "worldtask_world_task_task_details_40", "text": "瓦希尔指挥官发现可疑人员混入功夫塔,难道是被通缉的果酱教授?" }, "npctxt": { - "key": "worldtask_world_task_npctxt_39", + "key": "worldtask_world_task_npctxt_40", "text": "去找骇客蛛" }, "get_item": [], @@ -1702,6 +1775,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -1734,15 +1808,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_40", + "key": "worldtask_world_task_task_name_41", "text": "击退恐惧灵" }, "task_details": { - "key": "worldtask_world_task_task_details_40", + "key": "worldtask_world_task_task_details_41", "text": "击退恐惧灵" }, "npctxt": { - "key": "worldtask_world_task_npctxt_40", + "key": "worldtask_world_task_npctxt_41", "text": "击退恐惧灵" }, "get_item": [], @@ -1757,6 +1831,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -1794,15 +1869,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_41", + "key": "worldtask_world_task_task_name_42", "text": "冰霜泰坦难度1" }, "task_details": { - "key": "worldtask_world_task_task_details_41", + "key": "worldtask_world_task_task_details_42", "text": "冰霜泰坦难度1" }, "npctxt": { - "key": "worldtask_world_task_npctxt_41", + "key": "worldtask_world_task_npctxt_42", "text": "冰霜泰坦难度1" }, "get_item": [], @@ -1817,6 +1892,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -1849,15 +1925,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_42", + "key": "worldtask_world_task_task_name_43", "text": "剧情" }, "task_details": { - "key": "worldtask_world_task_task_details_42", + "key": "worldtask_world_task_task_details_43", "text": "剧情" }, "npctxt": { - "key": "worldtask_world_task_npctxt_42", + "key": "worldtask_world_task_npctxt_43", "text": "剧情" }, "get_item": [], @@ -1870,6 +1946,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -1907,15 +1984,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_43", + "key": "worldtask_world_task_task_name_44", "text": "6件装备+6" }, "task_details": { - "key": "worldtask_world_task_task_details_43", + "key": "worldtask_world_task_task_details_44", "text": "6件装备+6" }, "npctxt": { - "key": "worldtask_world_task_npctxt_43", + "key": "worldtask_world_task_npctxt_44", "text": "6件装备+6" }, "get_item": [], @@ -1930,6 +2007,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -1962,15 +2040,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_44", + "key": "worldtask_world_task_task_name_45", "text": "冒险5-4通关" }, "task_details": { - "key": "worldtask_world_task_task_details_44", + "key": "worldtask_world_task_task_details_45", "text": "冒险5-4通关" }, "npctxt": { - "key": "worldtask_world_task_npctxt_44", + "key": "worldtask_world_task_npctxt_45", "text": "冒险5-4通关" }, "get_item": [], @@ -1985,6 +2063,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -2022,15 +2101,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_45", + "key": "worldtask_world_task_task_name_46", "text": "冰霜泰坦难度2" }, "task_details": { - "key": "worldtask_world_task_task_details_45", + "key": "worldtask_world_task_task_details_46", "text": "冰霜泰坦难度2" }, "npctxt": { - "key": "worldtask_world_task_npctxt_45", + "key": "worldtask_world_task_npctxt_46", "text": "冰霜泰坦难度2" }, "get_item": [], @@ -2045,6 +2124,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -2077,15 +2157,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_46", + "key": "worldtask_world_task_task_name_47", "text": "冒险5-8通关" }, "task_details": { - "key": "worldtask_world_task_task_details_46", + "key": "worldtask_world_task_task_details_47", "text": "冒险5-8通关" }, "npctxt": { - "key": "worldtask_world_task_npctxt_46", + "key": "worldtask_world_task_npctxt_47", "text": "冒险5-8通关" }, "get_item": [], @@ -2100,6 +2180,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -2137,15 +2218,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_47", + "key": "worldtask_world_task_task_name_48", "text": "剧情" }, "task_details": { - "key": "worldtask_world_task_task_details_47", + "key": "worldtask_world_task_task_details_48", "text": "剧情" }, "npctxt": { - "key": "worldtask_world_task_npctxt_47", + "key": "worldtask_world_task_npctxt_48", "text": "剧情" }, "get_item": [], @@ -2158,6 +2239,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -2190,15 +2272,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_48", + "key": "worldtask_world_task_task_name_49", "text": "剧情" }, "task_details": { - "key": "worldtask_world_task_task_details_48", + "key": "worldtask_world_task_task_details_49", "text": "剧情" }, "npctxt": { - "key": "worldtask_world_task_npctxt_48", + "key": "worldtask_world_task_npctxt_49", "text": "剧情" }, "get_item": [], @@ -2211,6 +2293,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -2248,15 +2331,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_49", + "key": "worldtask_world_task_task_name_50", "text": "炼金塔5层" }, "task_details": { - "key": "worldtask_world_task_task_details_49", + "key": "worldtask_world_task_task_details_50", "text": "炼金塔5层" }, "npctxt": { - "key": "worldtask_world_task_npctxt_49", + "key": "worldtask_world_task_npctxt_50", "text": "炼金塔5层" }, "get_item": [], @@ -2271,6 +2354,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -2303,15 +2387,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_50", + "key": "worldtask_world_task_task_name_51", "text": "击退恐惧灵" }, "task_details": { - "key": "worldtask_world_task_task_details_50", + "key": "worldtask_world_task_task_details_51", "text": "击退恐惧灵" }, "npctxt": { - "key": "worldtask_world_task_npctxt_50", + "key": "worldtask_world_task_npctxt_51", "text": "击退恐惧灵" }, "get_item": [], @@ -2326,6 +2410,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -2363,15 +2448,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_51", + "key": "worldtask_world_task_task_name_52", "text": "击退恐惧灵" }, "task_details": { - "key": "worldtask_world_task_task_details_51", + "key": "worldtask_world_task_task_details_52", "text": "击退恐惧灵" }, "npctxt": { - "key": "worldtask_world_task_npctxt_51", + "key": "worldtask_world_task_npctxt_52", "text": "击退恐惧灵" }, "get_item": [], @@ -2386,6 +2471,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -2418,15 +2504,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_52", + "key": "worldtask_world_task_task_name_53", "text": "击退恐惧灵" }, "task_details": { - "key": "worldtask_world_task_task_details_52", + "key": "worldtask_world_task_task_details_53", "text": "击退恐惧灵" }, "npctxt": { - "key": "worldtask_world_task_npctxt_52", + "key": "worldtask_world_task_npctxt_53", "text": "击退恐惧灵" }, "get_item": [], @@ -2441,6 +2527,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -2478,15 +2565,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_53", + "key": "worldtask_world_task_task_name_54", "text": "森林泰坦难度1" }, "task_details": { - "key": "worldtask_world_task_task_details_53", + "key": "worldtask_world_task_task_details_54", "text": "森林泰坦难度1" }, "npctxt": { - "key": "worldtask_world_task_npctxt_53", + "key": "worldtask_world_task_npctxt_54", "text": "森林泰坦难度1" }, "get_item": [], @@ -2501,6 +2588,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -2533,15 +2621,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_54", + "key": "worldtask_world_task_task_name_55", "text": "主角星座觉醒3次" }, "task_details": { - "key": "worldtask_world_task_task_details_54", + "key": "worldtask_world_task_task_details_55", "text": "主角星座觉醒3次" }, "npctxt": { - "key": "worldtask_world_task_npctxt_54", + "key": "worldtask_world_task_npctxt_55", "text": "主角星座觉醒3次" }, "get_item": [], @@ -2556,6 +2644,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -2593,15 +2682,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_55", + "key": "worldtask_world_task_task_name_56", "text": "9件装备强化+6" }, "task_details": { - "key": "worldtask_world_task_task_details_55", + "key": "worldtask_world_task_task_details_56", "text": "9件装备强化+6" }, "npctxt": { - "key": "worldtask_world_task_npctxt_55", + "key": "worldtask_world_task_npctxt_56", "text": "9件装备强化+6" }, "get_item": [], @@ -2616,6 +2705,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -2648,15 +2738,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_56", + "key": "worldtask_world_task_task_name_57", "text": "击退恐惧灵" }, "task_details": { - "key": "worldtask_world_task_task_details_56", + "key": "worldtask_world_task_task_details_57", "text": "击退恐惧灵" }, "npctxt": { - "key": "worldtask_world_task_npctxt_56", + "key": "worldtask_world_task_npctxt_57", "text": "击退恐惧灵" }, "get_item": [], @@ -2671,6 +2761,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -2708,15 +2799,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_57", + "key": "worldtask_world_task_task_name_58", "text": "击退恐惧灵" }, "task_details": { - "key": "worldtask_world_task_task_details_57", + "key": "worldtask_world_task_task_details_58", "text": "击退恐惧灵" }, "npctxt": { - "key": "worldtask_world_task_npctxt_57", + "key": "worldtask_world_task_npctxt_58", "text": "击退恐惧灵" }, "get_item": [], @@ -2731,6 +2822,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -2763,15 +2855,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_58", + "key": "worldtask_world_task_task_name_59", "text": "剧情" }, "task_details": { - "key": "worldtask_world_task_task_details_58", + "key": "worldtask_world_task_task_details_59", "text": "剧情" }, "npctxt": { - "key": "worldtask_world_task_npctxt_58", + "key": "worldtask_world_task_npctxt_59", "text": "剧情" }, "get_item": [], @@ -2784,6 +2876,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -2821,15 +2914,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_59", + "key": "worldtask_world_task_task_name_60", "text": "冒险6-8通关" }, "task_details": { - "key": "worldtask_world_task_task_details_59", + "key": "worldtask_world_task_task_details_60", "text": "冒险6-8通关" }, "npctxt": { - "key": "worldtask_world_task_npctxt_59", + "key": "worldtask_world_task_npctxt_60", "text": "冒险6-8通关" }, "get_item": [], @@ -2844,6 +2937,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -2876,15 +2970,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_60", + "key": "worldtask_world_task_task_name_61", "text": "森林泰坦难度2" }, "task_details": { - "key": "worldtask_world_task_task_details_60", + "key": "worldtask_world_task_task_details_61", "text": "森林泰坦难度2" }, "npctxt": { - "key": "worldtask_world_task_npctxt_60", + "key": "worldtask_world_task_npctxt_61", "text": "森林泰坦难度2" }, "get_item": [], @@ -2899,6 +2993,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -2936,15 +3031,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_61", + "key": "worldtask_world_task_task_name_62", "text": "12件装备强化+6" }, "task_details": { - "key": "worldtask_world_task_task_details_61", + "key": "worldtask_world_task_task_details_62", "text": "12件装备强化+6" }, "npctxt": { - "key": "worldtask_world_task_npctxt_61", + "key": "worldtask_world_task_npctxt_62", "text": "12件装备强化+6" }, "get_item": [], @@ -2959,6 +3054,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -2991,15 +3087,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_62", + "key": "worldtask_world_task_task_name_63", "text": "武馆木桩解锁3根" }, "task_details": { - "key": "worldtask_world_task_task_details_62", + "key": "worldtask_world_task_task_details_63", "text": "武馆木桩解锁3根" }, "npctxt": { - "key": "worldtask_world_task_npctxt_62", + "key": "worldtask_world_task_npctxt_63", "text": "武馆木桩解锁3根" }, "get_item": [], @@ -3014,6 +3110,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -3051,15 +3148,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_63", + "key": "worldtask_world_task_task_name_64", "text": "炼金塔10层" }, "task_details": { - "key": "worldtask_world_task_task_details_63", + "key": "worldtask_world_task_task_details_64", "text": "炼金塔10层" }, "npctxt": { - "key": "worldtask_world_task_npctxt_63", + "key": "worldtask_world_task_npctxt_64", "text": "炼金塔10层" }, "get_item": [], @@ -3074,6 +3171,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -3106,15 +3204,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_64", + "key": "worldtask_world_task_task_name_65", "text": "冒险7-8通关" }, "task_details": { - "key": "worldtask_world_task_task_details_64", + "key": "worldtask_world_task_task_details_65", "text": "冒险7-8通关" }, "npctxt": { - "key": "worldtask_world_task_npctxt_64", + "key": "worldtask_world_task_npctxt_65", "text": "冒险7-8通关" }, "get_item": [], @@ -3129,6 +3227,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -3166,15 +3265,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_65", + "key": "worldtask_world_task_task_name_66", "text": "击退恐惧灵" }, "task_details": { - "key": "worldtask_world_task_task_details_65", + "key": "worldtask_world_task_task_details_66", "text": "击退恐惧灵" }, "npctxt": { - "key": "worldtask_world_task_npctxt_65", + "key": "worldtask_world_task_npctxt_66", "text": "击退恐惧灵" }, "get_item": [], @@ -3189,6 +3288,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -3221,15 +3321,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_66", + "key": "worldtask_world_task_task_name_67", "text": "击退恐惧灵" }, "task_details": { - "key": "worldtask_world_task_task_details_66", + "key": "worldtask_world_task_task_details_67", "text": "击退恐惧灵" }, "npctxt": { - "key": "worldtask_world_task_npctxt_66", + "key": "worldtask_world_task_npctxt_67", "text": "击退恐惧灵" }, "get_item": [], @@ -3244,6 +3344,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -3281,15 +3382,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_67", + "key": "worldtask_world_task_task_name_68", "text": "穿+6的无极神功套装" }, "task_details": { - "key": "worldtask_world_task_task_details_67", + "key": "worldtask_world_task_task_details_68", "text": "穿+6的无极神功套装" }, "npctxt": { - "key": "worldtask_world_task_npctxt_67", + "key": "worldtask_world_task_npctxt_68", "text": "穿+6的无极神功套装" }, "get_item": [], @@ -3304,6 +3405,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -3336,15 +3438,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_68", + "key": "worldtask_world_task_task_name_69", "text": "加入任意俱乐部" }, "task_details": { - "key": "worldtask_world_task_task_details_68", + "key": "worldtask_world_task_task_details_69", "text": "加入任意俱乐部" }, "npctxt": { - "key": "worldtask_world_task_npctxt_68", + "key": "worldtask_world_task_npctxt_69", "text": "加入任意俱乐部" }, "get_item": [], @@ -3359,6 +3461,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -3396,15 +3499,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_69", + "key": "worldtask_world_task_task_name_70", "text": "森林泰坦难度3" }, "task_details": { - "key": "worldtask_world_task_task_details_69", + "key": "worldtask_world_task_task_details_70", "text": "森林泰坦难度3" }, "npctxt": { - "key": "worldtask_world_task_npctxt_69", + "key": "worldtask_world_task_npctxt_70", "text": "森林泰坦难度3" }, "get_item": [], @@ -3419,6 +3522,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -3451,15 +3555,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_70", + "key": "worldtask_world_task_task_name_71", "text": "森林泰坦难度4" }, "task_details": { - "key": "worldtask_world_task_task_details_70", + "key": "worldtask_world_task_task_details_71", "text": "森林泰坦难度4" }, "npctxt": { - "key": "worldtask_world_task_npctxt_70", + "key": "worldtask_world_task_npctxt_71", "text": "森林泰坦难度4" }, "get_item": [], @@ -3474,6 +3578,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -3511,15 +3616,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_71", + "key": "worldtask_world_task_task_name_72", "text": "守护者回响解锁次数10次" }, "task_details": { - "key": "worldtask_world_task_task_details_71", + "key": "worldtask_world_task_task_details_72", "text": "守护者回响解锁次数10次" }, "npctxt": { - "key": "worldtask_world_task_npctxt_71", + "key": "worldtask_world_task_npctxt_72", "text": "守护者回响解锁次数10次" }, "get_item": [], @@ -3534,6 +3639,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -3566,15 +3672,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_72", + "key": "worldtask_world_task_task_name_73", "text": "守护者回响解锁次数15次" }, "task_details": { - "key": "worldtask_world_task_task_details_72", + "key": "worldtask_world_task_task_details_73", "text": "守护者回响解锁次数15次" }, "npctxt": { - "key": "worldtask_world_task_npctxt_72", + "key": "worldtask_world_task_npctxt_73", "text": "守护者回响解锁次数15次" }, "get_item": [], @@ -3589,6 +3695,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -3626,15 +3733,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_73", + "key": "worldtask_world_task_task_name_74", "text": "冒险8-8通关" }, "task_details": { - "key": "worldtask_world_task_task_details_73", + "key": "worldtask_world_task_task_details_74", "text": "冒险8-8通关" }, "npctxt": { - "key": "worldtask_world_task_npctxt_73", + "key": "worldtask_world_task_npctxt_74", "text": "冒险8-8通关" }, "get_item": [], @@ -3649,6 +3756,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -3681,15 +3789,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_74", + "key": "worldtask_world_task_task_name_75", "text": "12件装备强化+9" }, "task_details": { - "key": "worldtask_world_task_task_details_74", + "key": "worldtask_world_task_task_details_75", "text": "12件装备强化+9" }, "npctxt": { - "key": "worldtask_world_task_npctxt_74", + "key": "worldtask_world_task_npctxt_75", "text": "12件装备强化+9" }, "get_item": [], @@ -3704,6 +3812,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -3741,15 +3850,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_75", + "key": "worldtask_world_task_task_name_76", "text": "竞技场3胜" }, "task_details": { - "key": "worldtask_world_task_task_details_75", + "key": "worldtask_world_task_task_details_76", "text": "竞技场3胜" }, "npctxt": { - "key": "worldtask_world_task_npctxt_75", + "key": "worldtask_world_task_npctxt_76", "text": "竞技场3胜" }, "get_item": [], @@ -3764,6 +3873,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -3796,15 +3906,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_76", + "key": "worldtask_world_task_task_name_77", "text": "森林泰坦难度5" }, "task_details": { - "key": "worldtask_world_task_task_details_76", + "key": "worldtask_world_task_task_details_77", "text": "森林泰坦难度5" }, "npctxt": { - "key": "worldtask_world_task_npctxt_76", + "key": "worldtask_world_task_npctxt_77", "text": "森林泰坦难度5" }, "get_item": [], @@ -3819,6 +3929,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -3856,15 +3967,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_77", + "key": "worldtask_world_task_task_name_78", "text": "守护者回响解锁解锁20次" }, "task_details": { - "key": "worldtask_world_task_task_details_77", + "key": "worldtask_world_task_task_details_78", "text": "守护者回响解锁解锁20次" }, "npctxt": { - "key": "worldtask_world_task_npctxt_77", + "key": "worldtask_world_task_npctxt_78", "text": "守护者回响解锁解锁20次" }, "get_item": [], @@ -3879,6 +3990,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -3911,15 +4023,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_78", + "key": "worldtask_world_task_task_name_79", "text": "冒险9-8通关" }, "task_details": { - "key": "worldtask_world_task_task_details_78", + "key": "worldtask_world_task_task_details_79", "text": "冒险9-8通关" }, "npctxt": { - "key": "worldtask_world_task_npctxt_78", + "key": "worldtask_world_task_npctxt_79", "text": "冒险9-8通关" }, "get_item": [], @@ -3934,6 +4046,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -3971,15 +4084,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_79", + "key": "worldtask_world_task_task_name_80", "text": "搜集12个4星装备" }, "task_details": { - "key": "worldtask_world_task_task_details_79", + "key": "worldtask_world_task_task_details_80", "text": "搜集12个4星装备" }, "npctxt": { - "key": "worldtask_world_task_npctxt_79", + "key": "worldtask_world_task_npctxt_80", "text": "搜集12个4星装备" }, "get_item": [], @@ -3994,6 +4107,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -4026,15 +4140,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_80", + "key": "worldtask_world_task_task_name_81", "text": "炼金塔20层" }, "task_details": { - "key": "worldtask_world_task_task_details_80", + "key": "worldtask_world_task_task_details_81", "text": "炼金塔20层" }, "npctxt": { - "key": "worldtask_world_task_npctxt_80", + "key": "worldtask_world_task_npctxt_81", "text": "炼金塔20层" }, "get_item": [], @@ -4049,6 +4163,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -4086,15 +4201,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_81", + "key": "worldtask_world_task_task_name_82", "text": "冒险10-8通关" }, "task_details": { - "key": "worldtask_world_task_task_details_81", + "key": "worldtask_world_task_task_details_82", "text": "冒险10-8通关" }, "npctxt": { - "key": "worldtask_world_task_npctxt_81", + "key": "worldtask_world_task_npctxt_82", "text": "冒险10-8通关" }, "get_item": [], @@ -4109,6 +4224,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -4141,15 +4257,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_82", + "key": "worldtask_world_task_task_name_83", "text": "森林泰坦难度6" }, "task_details": { - "key": "worldtask_world_task_task_details_82", + "key": "worldtask_world_task_task_details_83", "text": "森林泰坦难度6" }, "npctxt": { - "key": "worldtask_world_task_npctxt_82", + "key": "worldtask_world_task_npctxt_83", "text": "森林泰坦难度6" }, "get_item": [], @@ -4164,6 +4280,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -4201,15 +4318,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_83", + "key": "worldtask_world_task_task_name_84", "text": "18件强化+9" }, "task_details": { - "key": "worldtask_world_task_task_details_83", + "key": "worldtask_world_task_task_details_84", "text": "18件强化+9" }, "npctxt": { - "key": "worldtask_world_task_npctxt_83", + "key": "worldtask_world_task_npctxt_84", "text": "18件强化+9" }, "get_item": [], @@ -4224,6 +4341,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -4256,15 +4374,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_84", + "key": "worldtask_world_task_task_name_85", "text": "冒险11-8通关" }, "task_details": { - "key": "worldtask_world_task_task_details_84", + "key": "worldtask_world_task_task_details_85", "text": "冒险11-8通关" }, "npctxt": { - "key": "worldtask_world_task_npctxt_84", + "key": "worldtask_world_task_npctxt_85", "text": "冒险11-8通关" }, "get_item": [], @@ -4279,6 +4397,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -4316,15 +4435,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_85", + "key": "worldtask_world_task_task_name_86", "text": "守护者回响解锁25次" }, "task_details": { - "key": "worldtask_world_task_task_details_85", + "key": "worldtask_world_task_task_details_86", "text": "守护者回响解锁25次" }, "npctxt": { - "key": "worldtask_world_task_npctxt_85", + "key": "worldtask_world_task_npctxt_86", "text": "守护者回响解锁25次" }, "get_item": [], @@ -4339,6 +4458,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -4371,15 +4491,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_86", + "key": "worldtask_world_task_task_name_87", "text": "冒险12-3通关" }, "task_details": { - "key": "worldtask_world_task_task_details_86", + "key": "worldtask_world_task_task_details_87", "text": "冒险12-3通关" }, "npctxt": { - "key": "worldtask_world_task_npctxt_86", + "key": "worldtask_world_task_npctxt_87", "text": "冒险12-3通关" }, "get_item": [], @@ -4394,6 +4514,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -4431,15 +4552,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_87", + "key": "worldtask_world_task_task_name_88", "text": "森林泰坦难度7" }, "task_details": { - "key": "worldtask_world_task_task_details_87", + "key": "worldtask_world_task_task_details_88", "text": "森林泰坦难度7" }, "npctxt": { - "key": "worldtask_world_task_npctxt_87", + "key": "worldtask_world_task_npctxt_88", "text": "森林泰坦难度7" }, "get_item": [], @@ -4454,6 +4575,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -4486,15 +4608,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_88", + "key": "worldtask_world_task_task_name_89", "text": "8件任意装备强化+12" }, "task_details": { - "key": "worldtask_world_task_task_details_88", + "key": "worldtask_world_task_task_details_89", "text": "8件任意装备强化+12" }, "npctxt": { - "key": "worldtask_world_task_npctxt_88", + "key": "worldtask_world_task_npctxt_89", "text": "8件任意装备强化+12" }, "get_item": [], @@ -4509,6 +4631,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -4546,15 +4669,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_89", + "key": "worldtask_world_task_task_name_90", "text": "冒险12-6通关" }, "task_details": { - "key": "worldtask_world_task_task_details_89", + "key": "worldtask_world_task_task_details_90", "text": "冒险12-6通关" }, "npctxt": { - "key": "worldtask_world_task_npctxt_89", + "key": "worldtask_world_task_npctxt_90", "text": "冒险12-6通关" }, "get_item": [], @@ -4569,6 +4692,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -4601,15 +4725,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_90", + "key": "worldtask_world_task_task_name_91", "text": "竞技场获胜20次" }, "task_details": { - "key": "worldtask_world_task_task_details_90", + "key": "worldtask_world_task_task_details_91", "text": "竞技场获胜20次" }, "npctxt": { - "key": "worldtask_world_task_npctxt_90", + "key": "worldtask_world_task_npctxt_91", "text": "竞技场获胜20次" }, "get_item": [], @@ -4624,6 +4748,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -4661,15 +4786,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_91", + "key": "worldtask_world_task_task_name_92", "text": "冒险12-8通关" }, "task_details": { - "key": "worldtask_world_task_task_details_91", + "key": "worldtask_world_task_task_details_92", "text": "冒险12-8通关" }, "npctxt": { - "key": "worldtask_world_task_npctxt_91", + "key": "worldtask_world_task_npctxt_92", "text": "冒险12-8通关" }, "get_item": [], @@ -4684,6 +4809,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -4716,15 +4842,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_92", + "key": "worldtask_world_task_task_name_93", "text": "冒险关卡困难1-3" }, "task_details": { - "key": "worldtask_world_task_task_details_92", + "key": "worldtask_world_task_task_details_93", "text": "冒险关卡困难1-3" }, "npctxt": { - "key": "worldtask_world_task_npctxt_92", + "key": "worldtask_world_task_npctxt_93", "text": "冒险关卡困难1-3" }, "get_item": [], @@ -4739,6 +4865,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -4771,15 +4898,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_93", + "key": "worldtask_world_task_task_name_94", "text": "冒险关卡困难1-6" }, "task_details": { - "key": "worldtask_world_task_task_details_93", + "key": "worldtask_world_task_task_details_94", "text": "冒险关卡困难1-6" }, "npctxt": { - "key": "worldtask_world_task_npctxt_93", + "key": "worldtask_world_task_npctxt_94", "text": "冒险关卡困难1-6" }, "get_item": [], @@ -4794,6 +4921,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -4831,15 +4959,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_94", + "key": "worldtask_world_task_task_name_95", "text": "冒险关卡困难2-3" }, "task_details": { - "key": "worldtask_world_task_task_details_94", + "key": "worldtask_world_task_task_details_95", "text": "冒险关卡困难2-3" }, "npctxt": { - "key": "worldtask_world_task_npctxt_94", + "key": "worldtask_world_task_npctxt_95", "text": "冒险关卡困难2-3" }, "get_item": [], @@ -4854,6 +4982,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -4886,15 +5015,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_95", + "key": "worldtask_world_task_task_name_96", "text": "冒险关卡困难2-6" }, "task_details": { - "key": "worldtask_world_task_task_details_95", + "key": "worldtask_world_task_task_details_96", "text": "冒险关卡困难2-6" }, "npctxt": { - "key": "worldtask_world_task_npctxt_95", + "key": "worldtask_world_task_npctxt_96", "text": "冒险关卡困难2-6" }, "get_item": [], @@ -4909,6 +5038,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -4946,15 +5076,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_96", + "key": "worldtask_world_task_task_name_97", "text": "冒险关卡困难3-3" }, "task_details": { - "key": "worldtask_world_task_task_details_96", + "key": "worldtask_world_task_task_details_97", "text": "冒险关卡困难3-3" }, "npctxt": { - "key": "worldtask_world_task_npctxt_96", + "key": "worldtask_world_task_npctxt_97", "text": "冒险关卡困难3-3" }, "get_item": [], @@ -4969,6 +5099,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -5001,15 +5132,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_97", + "key": "worldtask_world_task_task_name_98", "text": "冒险关卡困难3-6" }, "task_details": { - "key": "worldtask_world_task_task_details_97", + "key": "worldtask_world_task_task_details_98", "text": "冒险关卡困难3-6" }, "npctxt": { - "key": "worldtask_world_task_npctxt_97", + "key": "worldtask_world_task_npctxt_98", "text": "冒险关卡困难3-6" }, "get_item": [], @@ -5024,6 +5155,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -5061,15 +5193,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_98", + "key": "worldtask_world_task_task_name_99", "text": "冒险关卡困难4-3" }, "task_details": { - "key": "worldtask_world_task_task_details_98", + "key": "worldtask_world_task_task_details_99", "text": "冒险关卡困难4-3" }, "npctxt": { - "key": "worldtask_world_task_npctxt_98", + "key": "worldtask_world_task_npctxt_99", "text": "冒险关卡困难4-3" }, "get_item": [], @@ -5084,6 +5216,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -5106,15 +5239,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_99", + "key": "worldtask_world_task_task_name_100", "text": "冒险关卡困难4-6" }, "task_details": { - "key": "worldtask_world_task_task_details_99", + "key": "worldtask_world_task_task_details_100", "text": "冒险关卡困难4-6" }, "npctxt": { - "key": "worldtask_world_task_npctxt_99", + "key": "worldtask_world_task_npctxt_100", "text": "冒险关卡困难4-6" }, "get_item": [], @@ -5129,6 +5262,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -5151,15 +5285,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_100", + "key": "worldtask_world_task_task_name_101", "text": "冒险关卡困难5-3" }, "task_details": { - "key": "worldtask_world_task_task_details_100", + "key": "worldtask_world_task_task_details_101", "text": "冒险关卡困难5-3" }, "npctxt": { - "key": "worldtask_world_task_npctxt_100", + "key": "worldtask_world_task_npctxt_101", "text": "冒险关卡困难5-3" }, "get_item": [], @@ -5174,6 +5308,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -5196,15 +5331,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_101", + "key": "worldtask_world_task_task_name_102", "text": "冒险关卡困难5-6" }, "task_details": { - "key": "worldtask_world_task_task_details_101", + "key": "worldtask_world_task_task_details_102", "text": "冒险关卡困难5-6" }, "npctxt": { - "key": "worldtask_world_task_npctxt_101", + "key": "worldtask_world_task_npctxt_102", "text": "冒险关卡困难5-6" }, "get_item": [], @@ -5219,6 +5354,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -5241,15 +5377,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_102", + "key": "worldtask_world_task_task_name_103", "text": "冒险关卡困难6-3" }, "task_details": { - "key": "worldtask_world_task_task_details_102", + "key": "worldtask_world_task_task_details_103", "text": "冒险关卡困难6-3" }, "npctxt": { - "key": "worldtask_world_task_npctxt_102", + "key": "worldtask_world_task_npctxt_103", "text": "冒险关卡困难6-3" }, "get_item": [], @@ -5264,6 +5400,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -5286,15 +5423,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_103", + "key": "worldtask_world_task_task_name_104", "text": "冒险关卡困难6-6" }, "task_details": { - "key": "worldtask_world_task_task_details_103", + "key": "worldtask_world_task_task_details_104", "text": "冒险关卡困难6-6" }, "npctxt": { - "key": "worldtask_world_task_npctxt_103", + "key": "worldtask_world_task_npctxt_104", "text": "冒险关卡困难6-6" }, "get_item": [], @@ -5309,6 +5446,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -5331,15 +5469,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_104", + "key": "worldtask_world_task_task_name_105", "text": "冒险关卡困难7-3" }, "task_details": { - "key": "worldtask_world_task_task_details_104", + "key": "worldtask_world_task_task_details_105", "text": "冒险关卡困难7-3" }, "npctxt": { - "key": "worldtask_world_task_npctxt_104", + "key": "worldtask_world_task_npctxt_105", "text": "冒险关卡困难7-3" }, "get_item": [], @@ -5354,6 +5492,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -5376,15 +5515,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_105", + "key": "worldtask_world_task_task_name_106", "text": "冒险关卡困难7-6" }, "task_details": { - "key": "worldtask_world_task_task_details_105", + "key": "worldtask_world_task_task_details_106", "text": "冒险关卡困难7-6" }, "npctxt": { - "key": "worldtask_world_task_npctxt_105", + "key": "worldtask_world_task_npctxt_106", "text": "冒险关卡困难7-6" }, "get_item": [], @@ -5399,6 +5538,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -5421,15 +5561,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_106", + "key": "worldtask_world_task_task_name_107", "text": "冒险关卡困难8-3" }, "task_details": { - "key": "worldtask_world_task_task_details_106", + "key": "worldtask_world_task_task_details_107", "text": "冒险关卡困难8-3" }, "npctxt": { - "key": "worldtask_world_task_npctxt_106", + "key": "worldtask_world_task_npctxt_107", "text": "冒险关卡困难8-3" }, "get_item": [], @@ -5444,6 +5584,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -5466,15 +5607,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_107", + "key": "worldtask_world_task_task_name_108", "text": "冒险关卡困难8-6" }, "task_details": { - "key": "worldtask_world_task_task_details_107", + "key": "worldtask_world_task_task_details_108", "text": "冒险关卡困难8-6" }, "npctxt": { - "key": "worldtask_world_task_npctxt_107", + "key": "worldtask_world_task_npctxt_108", "text": "冒险关卡困难8-6" }, "get_item": [], @@ -5489,6 +5630,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -5511,15 +5653,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_108", + "key": "worldtask_world_task_task_name_109", "text": "冒险关卡困难9-3" }, "task_details": { - "key": "worldtask_world_task_task_details_108", + "key": "worldtask_world_task_task_details_109", "text": "冒险关卡困难9-3" }, "npctxt": { - "key": "worldtask_world_task_npctxt_108", + "key": "worldtask_world_task_npctxt_109", "text": "冒险关卡困难9-3" }, "get_item": [], @@ -5534,6 +5676,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -5556,15 +5699,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_109", + "key": "worldtask_world_task_task_name_110", "text": "冒险关卡困难9-6" }, "task_details": { - "key": "worldtask_world_task_task_details_109", + "key": "worldtask_world_task_task_details_110", "text": "冒险关卡困难9-6" }, "npctxt": { - "key": "worldtask_world_task_npctxt_109", + "key": "worldtask_world_task_npctxt_110", "text": "冒险关卡困难9-6" }, "get_item": [], @@ -5579,6 +5722,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -5601,15 +5745,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_110", + "key": "worldtask_world_task_task_name_111", "text": "冒险关卡困难10-3" }, "task_details": { - "key": "worldtask_world_task_task_details_110", + "key": "worldtask_world_task_task_details_111", "text": "冒险关卡困难10-3" }, "npctxt": { - "key": "worldtask_world_task_npctxt_110", + "key": "worldtask_world_task_npctxt_111", "text": "冒险关卡困难10-3" }, "get_item": [], @@ -5624,6 +5768,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -5646,15 +5791,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_111", + "key": "worldtask_world_task_task_name_112", "text": "冒险关卡困难10-6" }, "task_details": { - "key": "worldtask_world_task_task_details_111", + "key": "worldtask_world_task_task_details_112", "text": "冒险关卡困难10-6" }, "npctxt": { - "key": "worldtask_world_task_npctxt_111", + "key": "worldtask_world_task_npctxt_112", "text": "冒险关卡困难10-6" }, "get_item": [], @@ -5669,6 +5814,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -5691,15 +5837,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_112", + "key": "worldtask_world_task_task_name_113", "text": "冒险关卡困难11-3" }, "task_details": { - "key": "worldtask_world_task_task_details_112", + "key": "worldtask_world_task_task_details_113", "text": "冒险关卡困难11-3" }, "npctxt": { - "key": "worldtask_world_task_npctxt_112", + "key": "worldtask_world_task_npctxt_113", "text": "冒险关卡困难11-3" }, "get_item": [], @@ -5714,6 +5860,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -5736,15 +5883,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_113", + "key": "worldtask_world_task_task_name_114", "text": "冒险关卡困难11-6" }, "task_details": { - "key": "worldtask_world_task_task_details_113", + "key": "worldtask_world_task_task_details_114", "text": "冒险关卡困难11-6" }, "npctxt": { - "key": "worldtask_world_task_npctxt_113", + "key": "worldtask_world_task_npctxt_114", "text": "冒险关卡困难11-6" }, "get_item": [], @@ -5759,6 +5906,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -5781,15 +5929,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_114", + "key": "worldtask_world_task_task_name_115", "text": "冒险关卡困难12-3" }, "task_details": { - "key": "worldtask_world_task_task_details_114", + "key": "worldtask_world_task_task_details_115", "text": "冒险关卡困难12-3" }, "npctxt": { - "key": "worldtask_world_task_npctxt_114", + "key": "worldtask_world_task_npctxt_115", "text": "冒险关卡困难12-3" }, "get_item": [], @@ -5804,6 +5952,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -5826,15 +5975,15 @@ "des": 2, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_115", + "key": "worldtask_world_task_task_name_116", "text": "冒险关卡困难12-6" }, "task_details": { - "key": "worldtask_world_task_task_details_115", + "key": "worldtask_world_task_task_details_116", "text": "冒险关卡困难12-6" }, "npctxt": { - "key": "worldtask_world_task_npctxt_115", + "key": "worldtask_world_task_npctxt_116", "text": "冒险关卡困难12-6" }, "get_item": [], @@ -5849,6 +5998,7 @@ "tasktips": 0, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -5871,15 +6021,15 @@ "des": 5, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_116", + "key": "worldtask_world_task_task_name_117", "text": "兄弟,带一程" }, "task_details": { - "key": "worldtask_world_task_task_details_116", + "key": "worldtask_world_task_task_details_117", "text": "途中偶遇的守护者,期望我们带他前往某个城市。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_116", + "key": "worldtask_world_task_npctxt_117", "text": "兄弟,带一程" }, "get_item": [], @@ -5894,6 +6044,7 @@ "tasktips": 0, "lock_add": 1, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -5928,15 +6079,15 @@ "des": 5, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_117", + "key": "worldtask_world_task_task_name_118", "text": "特产不嫌多" }, "task_details": { - "key": "worldtask_world_task_task_details_117", + "key": "worldtask_world_task_task_details_118", "text": "一名守护者希望我们帮他购买一些特产,并承诺会用其他东西作为报酬。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_117", + "key": "worldtask_world_task_npctxt_118", "text": "特产不嫌多" }, "get_item": [], @@ -5951,6 +6102,7 @@ "tasktips": 0, "lock_add": 1, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -5985,15 +6137,15 @@ "des": 5, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_118", + "key": "worldtask_world_task_task_name_119", "text": "资助城市" }, "task_details": { - "key": "worldtask_world_task_task_details_118", + "key": "worldtask_world_task_task_details_119", "text": "如今我们稍有资产,守护者希望我们能资助一些城市,当地人会给予一些报酬。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_118", + "key": "worldtask_world_task_npctxt_119", "text": "资助城市" }, "get_item": [], @@ -6008,6 +6160,7 @@ "tasktips": 0, "lock_add": 1, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -6042,15 +6195,15 @@ "des": 5, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_119", + "key": "worldtask_world_task_task_name_120", "text": "雪中送炭" }, "task_details": { - "key": "worldtask_world_task_task_details_119", + "key": "worldtask_world_task_task_details_120", "text": "一些城市急需某些道具度过难关,我们或许应当帮助他们运转一下。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_119", + "key": "worldtask_world_task_npctxt_120", "text": "雪中送炭" }, "get_item": [], @@ -6065,6 +6218,7 @@ "tasktips": 0, "lock_add": 1, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -6099,15 +6253,15 @@ "des": 3, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_120", + "key": "worldtask_world_task_task_name_121", "text": "悍娇虎逸闻一" }, "task_details": { - "key": "worldtask_world_task_task_details_120", + "key": "worldtask_world_task_task_details_121", "text": "悍娇虎独自一人站在武馆,看上去似乎很生气。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_120", + "key": "worldtask_world_task_npctxt_121", "text": "和悍娇虎聊聊" }, "get_item": [], @@ -6120,6 +6274,7 @@ "tasktips": 0, "lock_add": 1, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -6142,15 +6297,15 @@ "des": 3, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_121", + "key": "worldtask_world_task_task_name_122", "text": "悍娇虎逸闻二" }, "task_details": { - "key": "worldtask_world_task_task_details_121", + "key": "worldtask_world_task_task_details_122", "text": "阿宝在哪儿呢,要在悍娇虎更生气之前找到才行。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_121", + "key": "worldtask_world_task_npctxt_122", "text": "找阿宝聊聊" }, "get_item": [], @@ -6163,6 +6318,7 @@ "tasktips": 0, "lock_add": 1, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -6185,15 +6341,15 @@ "des": 3, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_122", + "key": "worldtask_world_task_task_name_123", "text": "悍娇虎逸闻三" }, "task_details": { - "key": "worldtask_world_task_task_details_122", + "key": "worldtask_world_task_task_details_123", "text": "找到阿宝,并把阿宝带回武馆吧。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_122", + "key": "worldtask_world_task_npctxt_123", "text": "找到阿宝" }, "get_item": [ @@ -6214,6 +6370,7 @@ "tasktips": 0, "lock_add": 1, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -6236,15 +6393,15 @@ "des": 3, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_123", + "key": "worldtask_world_task_task_name_124", "text": "平先生的焦急" }, "task_details": { - "key": "worldtask_world_task_task_details_123", + "key": "worldtask_world_task_task_details_124", "text": "平先生焦急的看向武馆的方向,看上去像是遇到了什么棘手的事。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_123", + "key": "worldtask_world_task_npctxt_124", "text": "找平先生聊聊" }, "get_item": [], @@ -6257,6 +6414,7 @@ "tasktips": 0, "lock_add": 1, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -6279,15 +6437,15 @@ "des": 3, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_124", + "key": "worldtask_world_task_task_name_125", "text": "队伍的集体提升" }, "task_details": { - "key": "worldtask_world_task_task_details_124", + "key": "worldtask_world_task_task_details_125", "text": "博克岛的发展有点超出预期,伙伴们需要一些特殊的帮助来快速提升实力,去武馆请教下师傅吧。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_124", + "key": "worldtask_world_task_npctxt_125", "text": "找师傅聊聊" }, "get_item": [], @@ -6302,6 +6460,7 @@ "tasktips": 0, "lock_add": 1, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -6324,15 +6483,15 @@ "des": 3, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_125", + "key": "worldtask_world_task_task_name_126", "text": "驯龙小队的一天一" }, "task_details": { - "key": "worldtask_world_task_task_details_125", + "key": "worldtask_world_task_task_details_126", "text": "希卡普约着他的伙伴们一起做龙鞍,快帮他们收集制作材料吧。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_125", + "key": "worldtask_world_task_npctxt_126", "text": "和希卡普聊聊" }, "get_item": [], @@ -6347,6 +6506,7 @@ "tasktips": 0, "lock_add": 1, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -6369,15 +6529,15 @@ "des": 3, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_126", + "key": "worldtask_world_task_task_name_127", "text": "驯龙小队的一天二" }, "task_details": { - "key": "worldtask_world_task_task_details_126", + "key": "worldtask_world_task_task_details_127", "text": "原本好好制作龙鞍的鼻涕粗突然和亚丝翠吵了起来,得上前阻止他们。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_126", + "key": "worldtask_world_task_npctxt_127", "text": "阻止鼻涕粗" }, "get_item": [], @@ -6392,6 +6552,7 @@ "tasktips": 0, "lock_add": 1, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -6414,15 +6575,15 @@ "des": 3, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_127", + "key": "worldtask_world_task_task_name_128", "text": "驯龙小队的一天三" }, "task_details": { - "key": "worldtask_world_task_task_details_127", + "key": "worldtask_world_task_task_details_128", "text": "亚丝翠情绪激动,你不能让他们互相伤害。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_127", + "key": "worldtask_world_task_npctxt_128", "text": "阻止亚丝翠" }, "get_item": [], @@ -6437,6 +6598,7 @@ "tasktips": 0, "lock_add": 1, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -6459,15 +6621,15 @@ "des": 3, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_128", + "key": "worldtask_world_task_task_name_129", "text": "驯龙小队的一天四" }, "task_details": { - "key": "worldtask_world_task_task_details_128", + "key": "worldtask_world_task_task_details_129", "text": "希卡普看上去很生气。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_128", + "key": "worldtask_world_task_npctxt_129", "text": "和希卡普聊聊" }, "get_item": [], @@ -6480,6 +6642,7 @@ "tasktips": 0, "lock_add": 1, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -6502,15 +6665,15 @@ "des": 3, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_129", + "key": "worldtask_world_task_task_name_130", "text": "驯龙小队的一天五" }, "task_details": { - "key": "worldtask_world_task_task_details_129", + "key": "worldtask_world_task_task_details_130", "text": "和鼻涕粗沟通,让他知道问题出在哪。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_129", + "key": "worldtask_world_task_npctxt_130", "text": "找到鼻涕粗" }, "get_item": [], @@ -6523,6 +6686,7 @@ "tasktips": 0, "lock_add": 1, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -6545,15 +6709,15 @@ "des": 3, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_130", + "key": "worldtask_world_task_task_name_131", "text": "驯龙小队的一天终" }, "task_details": { - "key": "worldtask_world_task_task_details_130", + "key": "worldtask_world_task_task_details_131", "text": "为了让驯龙小队重归于好,你准备去找鼻涕粗聊聊。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_130", + "key": "worldtask_world_task_npctxt_131", "text": "让他们和好如初" }, "get_item": [], @@ -6566,6 +6730,7 @@ "tasktips": 0, "lock_add": 1, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -6588,15 +6753,15 @@ "des": 3, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_131", + "key": "worldtask_world_task_task_name_132", "text": "赛龙的故事" }, "task_details": { - "key": "worldtask_world_task_task_details_131", + "key": "worldtask_world_task_task_details_132", "text": "暴芙那特和悍夫那特好像又在斗嘴了。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_131", + "key": "worldtask_world_task_npctxt_132", "text": "去找双胞胎" }, "get_item": [], @@ -6609,6 +6774,7 @@ "tasktips": 0, "lock_add": 1, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -6631,15 +6797,15 @@ "des": 3, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_132", + "key": "worldtask_world_task_task_name_133", "text": "设备升级" }, "task_details": { - "key": "worldtask_world_task_task_details_132", + "key": "worldtask_world_task_task_details_133", "text": "变强的方法有很多种,冒险即将开始,铁匠铺的戈伯发来讯息有要事找我们,听说会给我们一份礼物。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_132", + "key": "worldtask_world_task_npctxt_133", "text": "和戈伯聊聊" }, "get_item": [ @@ -6660,6 +6826,7 @@ "tasktips": 0, "lock_add": 1, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -6682,15 +6849,15 @@ "des": 3, "icon": "25002", "task_name": { - "key": "worldtask_world_task_task_name_133", + "key": "worldtask_world_task_task_name_134", "text": "精心打造" }, "task_details": { - "key": "worldtask_world_task_task_details_133", + "key": "worldtask_world_task_task_details_134", "text": "戈伯的意思是,我们已经在锻造这一途上入门了,不过听说他有一种快捷的升级装备的路子,我们或许应该过去听听。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_133", + "key": "worldtask_world_task_npctxt_134", "text": "和戈伯聊聊" }, "get_item": [], @@ -6705,6 +6872,7 @@ "tasktips": 0, "lock_add": 1, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -6727,15 +6895,15 @@ "des": 3, "icon": "25003", "task_name": { - "key": "worldtask_world_task_task_name_134", + "key": "worldtask_world_task_task_name_135", "text": "精心打造" }, "task_details": { - "key": "worldtask_world_task_task_details_134", + "key": "worldtask_world_task_task_details_135", "text": "锻造一途深不见底,又是全新的考验,戈伯希望我加强训练,早日熟悉这种升级方式。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_134", + "key": "worldtask_world_task_npctxt_135", "text": "和戈伯聊聊" }, "get_item": [], @@ -6750,6 +6918,7 @@ "tasktips": 0, "lock_add": 1, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -6772,15 +6941,15 @@ "des": 3, "icon": "25004", "task_name": { - "key": "worldtask_world_task_task_name_135", + "key": "worldtask_world_task_task_name_136", "text": "大组织,大买卖" }, "task_details": { - "key": "worldtask_world_task_task_details_135", + "key": "worldtask_world_task_task_details_136", "text": "知道吗,沃尔夫和他的那位传奇血红爪搭档来到了中轴城,而且还有笔买卖找我们谈谈,或许该抽个时间去和他勾兑勾兑。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_135", + "key": "worldtask_world_task_npctxt_136", "text": "和沃尔夫聊聊" }, "get_item": [ @@ -6801,6 +6970,7 @@ "tasktips": 0, "lock_add": 1, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -6823,15 +6993,15 @@ "des": 3, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_136", + "key": "worldtask_world_task_task_name_137", "text": "梦中世界" }, "task_details": { - "key": "worldtask_world_task_task_details_136", + "key": "worldtask_world_task_task_details_137", "text": "邦尼兔在沙人那里,看上去十分焦急,快去看看吧。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_136", + "key": "worldtask_world_task_npctxt_137", "text": "找到邦尼兔" }, "get_item": [], @@ -6846,6 +7016,7 @@ "tasktips": 0, "lock_add": 1, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -6868,15 +7039,15 @@ "des": 3, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_137", + "key": "worldtask_world_task_task_name_138", "text": "挑战与狩猎" }, "task_details": { - "key": "worldtask_world_task_task_details_137", + "key": "worldtask_world_task_task_details_138", "text": "挑战与狩猎" }, "npctxt": { - "key": "worldtask_world_task_npctxt_137", + "key": "worldtask_world_task_npctxt_138", "text": "找到沃尔特" }, "get_item": [], @@ -6891,6 +7062,7 @@ "tasktips": 0, "lock_add": 1, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -6913,15 +7085,15 @@ "des": 3, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_138", + "key": "worldtask_world_task_task_name_139", "text": "公会与伙伴" }, "task_details": { - "key": "worldtask_world_task_task_details_138", + "key": "worldtask_world_task_task_details_139", "text": "公会与伙伴" }, "npctxt": { - "key": "worldtask_world_task_npctxt_138", + "key": "worldtask_world_task_npctxt_139", "text": "找到沃尔夫" }, "get_item": [], @@ -6934,6 +7106,7 @@ "tasktips": 0, "lock_add": 1, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -6956,15 +7129,15 @@ "des": 3, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_139", + "key": "worldtask_world_task_task_name_140", "text": "新的挑战之路" }, "task_details": { - "key": "worldtask_world_task_task_details_139", + "key": "worldtask_world_task_task_details_140", "text": "新的挑战之路" }, "npctxt": { - "key": "worldtask_world_task_npctxt_139", + "key": "worldtask_world_task_npctxt_140", "text": "找到浣熊师傅" }, "get_item": [], @@ -6977,6 +7150,7 @@ "tasktips": 0, "lock_add": 1, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -6999,15 +7173,15 @@ "des": 3, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_140", + "key": "worldtask_world_task_task_name_141", "text": "巨大的怪物们" }, "task_details": { - "key": "worldtask_world_task_task_details_140", + "key": "worldtask_world_task_task_details_141", "text": "s" }, "npctxt": { - "key": "worldtask_world_task_npctxt_140", + "key": "worldtask_world_task_npctxt_141", "text": "找到戈伯" }, "get_item": [], @@ -7020,6 +7194,7 @@ "tasktips": 0, "lock_add": 1, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -7042,15 +7217,15 @@ "des": 3, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_141", + "key": "worldtask_world_task_task_name_142", "text": "敲打与炉火" }, "task_details": { - "key": "worldtask_world_task_task_details_141", + "key": "worldtask_world_task_task_details_142", "text": "敲打与炉火" }, "npctxt": { - "key": "worldtask_world_task_npctxt_141", + "key": "worldtask_world_task_npctxt_142", "text": "找到戈伯" }, "get_item": [], @@ -7065,6 +7240,7 @@ "tasktips": 0, "lock_add": 1, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -7087,15 +7263,15 @@ "des": 3, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_142", + "key": "worldtask_world_task_task_name_143", "text": "穿戴尝试" }, "task_details": { - "key": "worldtask_world_task_task_details_142", + "key": "worldtask_world_task_task_details_143", "text": "穿戴尝试" }, "npctxt": { - "key": "worldtask_world_task_npctxt_142", + "key": "worldtask_world_task_npctxt_143", "text": "穿戴尝试" }, "get_item": [], @@ -7110,6 +7286,7 @@ "tasktips": 0, "lock_add": 1, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -7132,15 +7309,15 @@ "des": 3, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_143", + "key": "worldtask_world_task_task_name_144", "text": "秘境开启" }, "task_details": { - "key": "worldtask_world_task_task_details_143", + "key": "worldtask_world_task_task_details_144", "text": "秘境开启" }, "npctxt": { - "key": "worldtask_world_task_npctxt_143", + "key": "worldtask_world_task_npctxt_144", "text": "找到小伊" }, "get_item": [], @@ -7155,6 +7332,7 @@ "tasktips": 0, "lock_add": 1, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -7177,15 +7355,15 @@ "des": 3, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_144", + "key": "worldtask_world_task_task_name_145", "text": "汤水与包子" }, "task_details": { - "key": "worldtask_world_task_task_details_144", + "key": "worldtask_world_task_task_details_145", "text": "汤水与包子" }, "npctxt": { - "key": "worldtask_world_task_npctxt_144", + "key": "worldtask_world_task_npctxt_145", "text": "找到平先生" }, "get_item": [], @@ -7198,6 +7376,7 @@ "tasktips": 0, "lock_add": 1, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -7220,15 +7399,15 @@ "des": 3, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_145", + "key": "worldtask_world_task_task_name_146", "text": "伙伴需要互相理解" }, "task_details": { - "key": "worldtask_world_task_task_details_145", + "key": "worldtask_world_task_task_details_146", "text": "伙伴需要互相理解" }, "npctxt": { - "key": "worldtask_world_task_npctxt_145", + "key": "worldtask_world_task_npctxt_146", "text": "找到大大" }, "get_item": [], @@ -7241,6 +7420,7 @@ "tasktips": 0, "lock_add": 1, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -7263,15 +7443,15 @@ "des": 3, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_146", + "key": "worldtask_world_task_task_name_147", "text": "邻里帮助" }, "task_details": { - "key": "worldtask_world_task_task_details_146", + "key": "worldtask_world_task_task_details_147", "text": "邻里帮助" }, "npctxt": { - "key": "worldtask_world_task_npctxt_146", + "key": "worldtask_world_task_npctxt_147", "text": "找到悍娇虎" }, "get_item": [], @@ -7284,6 +7464,7 @@ "tasktips": 0, "lock_add": 1, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -7306,15 +7487,15 @@ "des": 3, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_147", + "key": "worldtask_world_task_task_name_148", "text": "一较高下" }, "task_details": { - "key": "worldtask_world_task_task_details_147", + "key": "worldtask_world_task_task_details_148", "text": "一较高下" }, "npctxt": { - "key": "worldtask_world_task_npctxt_147", + "key": "worldtask_world_task_npctxt_148", "text": "找到穿靴猫" }, "get_item": [], @@ -7327,6 +7508,7 @@ "tasktips": 0, "lock_add": 1, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -7349,15 +7531,15 @@ "des": 3, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_148", + "key": "worldtask_world_task_task_name_149", "text": "波比的奖励" }, "task_details": { - "key": "worldtask_world_task_task_details_148", + "key": "worldtask_world_task_task_details_149", "text": "波比的奖励" }, "npctxt": { - "key": "worldtask_world_task_npctxt_148", + "key": "worldtask_world_task_npctxt_149", "text": "找到波比" }, "get_item": [], @@ -7370,6 +7552,7 @@ "tasktips": 0, "lock_add": 1, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -7392,15 +7575,15 @@ "des": 3, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_149", + "key": "worldtask_world_task_task_name_150", "text": "资金周转" }, "task_details": { - "key": "worldtask_world_task_task_details_149", + "key": "worldtask_world_task_task_details_150", "text": "资金周转" }, "npctxt": { - "key": "worldtask_world_task_npctxt_149", + "key": "worldtask_world_task_npctxt_150", "text": "找到骇客蛛" }, "get_item": [], @@ -7413,6 +7596,7 @@ "tasktips": 0, "lock_add": 1, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -7435,15 +7619,15 @@ "des": 3, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_150", + "key": "worldtask_world_task_task_name_151", "text": "商队起航" }, "task_details": { - "key": "worldtask_world_task_task_details_150", + "key": "worldtask_world_task_task_details_151", "text": "商队起航" }, "npctxt": { - "key": "worldtask_world_task_npctxt_150", + "key": "worldtask_world_task_npctxt_151", "text": "商队起航" }, "get_item": [], @@ -7456,6 +7640,7 @@ "tasktips": 0, "lock_add": 2, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -7478,15 +7663,15 @@ "des": 3, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_151", + "key": "worldtask_world_task_task_name_152", "text": "挖掘潜能" }, "task_details": { - "key": "worldtask_world_task_task_details_151", + "key": "worldtask_world_task_task_details_152", "text": "挖掘潜能" }, "npctxt": { - "key": "worldtask_world_task_npctxt_151", + "key": "worldtask_world_task_npctxt_152", "text": "找到希沙窦斯" }, "get_item": [], @@ -7499,6 +7684,7 @@ "tasktips": 0, "lock_add": 1, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -7521,15 +7707,15 @@ "des": 3, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_152", + "key": "worldtask_world_task_task_name_153", "text": "守护者的训练" }, "task_details": { - "key": "worldtask_world_task_task_details_152", + "key": "worldtask_world_task_task_details_153", "text": "守护者的训练" }, "npctxt": { - "key": "worldtask_world_task_npctxt_152", + "key": "worldtask_world_task_npctxt_153", "text": "找到浣熊师傅" }, "get_item": [], @@ -7542,6 +7728,7 @@ "tasktips": 0, "lock_add": 1, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -7564,15 +7751,15 @@ "des": 3, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_153", + "key": "worldtask_world_task_task_name_154", "text": "师傅的教诲" }, "task_details": { - "key": "worldtask_world_task_task_details_153", + "key": "worldtask_world_task_task_details_154", "text": "师傅的教诲" }, "npctxt": { - "key": "worldtask_world_task_npctxt_153", + "key": "worldtask_world_task_npctxt_154", "text": "师傅的教诲" }, "get_item": [], @@ -7587,6 +7774,7 @@ "tasktips": 0, "lock_add": 1, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -7609,15 +7797,15 @@ "des": 1, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_154", + "key": "worldtask_world_task_task_name_155", "text": "乌龟大师的试炼" }, "task_details": { - "key": "worldtask_world_task_task_details_154", + "key": "worldtask_world_task_task_details_155", "text": "乌龟大师的智慧与功力都非常深厚,定能给你不小启发。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_154", + "key": "worldtask_world_task_npctxt_155", "text": "有人在找你" }, "get_item": [], @@ -7632,6 +7820,7 @@ "tasktips": 1, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -7669,15 +7858,15 @@ "des": 1, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_155", + "key": "worldtask_world_task_task_name_156", "text": "乌龟大师的试炼" }, "task_details": { - "key": "worldtask_world_task_task_details_155", + "key": "worldtask_world_task_task_details_156", "text": "乌龟大师的智慧与功力都非常深厚,定能给你不小启发。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_155", + "key": "worldtask_world_task_npctxt_156", "text": "有人在找你" }, "get_item": [], @@ -7692,6 +7881,7 @@ "tasktips": 1, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -7729,15 +7919,15 @@ "des": 1, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_156", + "key": "worldtask_world_task_task_name_157", "text": "乌龟大师的试炼" }, "task_details": { - "key": "worldtask_world_task_task_details_156", + "key": "worldtask_world_task_task_details_157", "text": "乌龟大师的智慧与功力都非常深厚,定能给你不小启发。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_156", + "key": "worldtask_world_task_npctxt_157", "text": "有人在找你" }, "get_item": [], @@ -7752,6 +7942,7 @@ "tasktips": 1, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -7789,15 +7980,15 @@ "des": 1, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_157", + "key": "worldtask_world_task_task_name_158", "text": "乌龟大师的试炼" }, "task_details": { - "key": "worldtask_world_task_task_details_157", + "key": "worldtask_world_task_task_details_158", "text": "乌龟大师的智慧与功力都非常深厚,定能给你不小启发。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_157", + "key": "worldtask_world_task_npctxt_158", "text": "有人在找你" }, "get_item": [], @@ -7812,6 +8003,7 @@ "tasktips": 1, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -7849,15 +8041,15 @@ "des": 1, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_158", + "key": "worldtask_world_task_task_name_159", "text": "乌龟大师的试炼" }, "task_details": { - "key": "worldtask_world_task_task_details_158", + "key": "worldtask_world_task_task_details_159", "text": "乌龟大师的智慧与功力都非常深厚,定能给你不小启发。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_158", + "key": "worldtask_world_task_npctxt_159", "text": "有人在找你" }, "get_item": [], @@ -7872,6 +8064,7 @@ "tasktips": 1, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -7909,15 +8102,15 @@ "des": 1, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_159", + "key": "worldtask_world_task_task_name_160", "text": "乌龟大师的试炼" }, "task_details": { - "key": "worldtask_world_task_task_details_159", + "key": "worldtask_world_task_task_details_160", "text": "乌龟大师的智慧与功力都非常深厚,定能给你不小启发。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_159", + "key": "worldtask_world_task_npctxt_160", "text": "有人在找你" }, "get_item": [], @@ -7932,6 +8125,7 @@ "tasktips": 1, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -7969,15 +8163,15 @@ "des": 1, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_160", + "key": "worldtask_world_task_task_name_161", "text": "住嘴吧驴子" }, "task_details": { - "key": "worldtask_world_task_task_details_160", + "key": "worldtask_world_task_task_details_161", "text": "贫嘴驴喋喋不休几小时了,赶快做道菜让他闭嘴,让世界清净一会。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_160", + "key": "worldtask_world_task_npctxt_161", "text": "贫嘴驴的烦恼" }, "get_item": [], @@ -7992,6 +8186,7 @@ "tasktips": 1, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -8029,15 +8224,15 @@ "des": 1, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_161", + "key": "worldtask_world_task_task_name_162", "text": "亚丝翠要下厨了" }, "task_details": { - "key": "worldtask_world_task_task_details_161", + "key": "worldtask_world_task_task_details_162", "text": "亚丝翠似乎想给风里飞做吃的……考虑到亚丝翠的厨艺,你决定伸出援手。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_161", + "key": "worldtask_world_task_npctxt_162", "text": "亚丝翠的烦恼" }, "get_item": [], @@ -8052,6 +8247,7 @@ "tasktips": 1, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -8089,15 +8285,15 @@ "des": 1, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_162", + "key": "worldtask_world_task_task_name_163", "text": "姜饼人的救赎" }, "task_details": { - "key": "worldtask_world_task_task_details_162", + "key": "worldtask_world_task_task_details_163", "text": "姜饼人看起来非常忧伤,也许他需要一位守护者的帮助。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_162", + "key": "worldtask_world_task_npctxt_163", "text": "姜饼人的烦恼" }, "get_item": [], @@ -8112,6 +8308,7 @@ "tasktips": 1, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -8149,15 +8346,15 @@ "des": 1, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_163", + "key": "worldtask_world_task_task_name_164", "text": "特快加急订单" }, "task_details": { - "key": "worldtask_world_task_task_details_163", + "key": "worldtask_world_task_task_details_164", "text": "翡翠宫突发大批订单!平先生一个鹅忙得喘不上气,他需要帮手!" }, "npctxt": { - "key": "worldtask_world_task_npctxt_163", + "key": "worldtask_world_task_npctxt_164", "text": "平先生的烦恼" }, "get_item": [], @@ -8172,6 +8369,7 @@ "tasktips": 1, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -8209,15 +8407,15 @@ "des": 1, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_164", + "key": "worldtask_world_task_task_name_165", "text": "匹诺曹的谎言" }, "task_details": { - "key": "worldtask_world_task_task_details_164", + "key": "worldtask_world_task_task_details_165", "text": "匹诺曹吹牛自己厨艺高超,不料惹上了麻烦,身为守护者的你自然不能坐视不管。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_164", + "key": "worldtask_world_task_npctxt_165", "text": "匹诺曹的烦恼" }, "get_item": [], @@ -8232,6 +8430,7 @@ "tasktips": 1, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -8269,15 +8468,15 @@ "des": 1, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_165", + "key": "worldtask_world_task_task_name_166", "text": "冒失的波比" }, "task_details": { - "key": "worldtask_world_task_task_details_165", + "key": "worldtask_world_task_task_details_166", "text": "波比又一次把琴给丢了,又一次求助你,你又一次要帮她找琴。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_165", + "key": "worldtask_world_task_npctxt_166", "text": "波比的失物找回" }, "get_item": [], @@ -8292,6 +8491,7 @@ "tasktips": 1, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -8329,15 +8529,15 @@ "des": 1, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_166", + "key": "worldtask_world_task_task_name_167", "text": "贪玩一时爽" }, "task_details": { - "key": "worldtask_world_task_task_details_166", + "key": "worldtask_world_task_task_details_167", "text": "希卡普很焦急的向你求助,他刚丢失了一件很重要的东西。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_166", + "key": "worldtask_world_task_npctxt_167", "text": "希卡普的失物找回" }, "get_item": [], @@ -8352,6 +8552,7 @@ "tasktips": 1, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -8389,15 +8590,15 @@ "des": 1, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_167", + "key": "worldtask_world_task_task_name_168", "text": "和谐之书" }, "task_details": { - "key": "worldtask_world_task_task_details_167", + "key": "worldtask_world_task_task_details_168", "text": "菲奥娜搞丢了一本魔药书,她思来想去只能求助你,这是本什么书呢?" }, "npctxt": { - "key": "worldtask_world_task_npctxt_167", + "key": "worldtask_world_task_npctxt_168", "text": "菲欧娜的失物找回" }, "get_item": [], @@ -8412,6 +8613,7 @@ "tasktips": 1, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -8449,15 +8651,15 @@ "des": 1, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_168", + "key": "worldtask_world_task_task_name_169", "text": "请假的理由" }, "task_details": { - "key": "worldtask_world_task_task_details_168", + "key": "worldtask_world_task_task_details_169", "text": "戈伯丢了东西,但他看起来十分开心,这是怎么回事?" }, "npctxt": { - "key": "worldtask_world_task_npctxt_168", + "key": "worldtask_world_task_npctxt_169", "text": "戈伯的失物找回" }, "get_item": [], @@ -8472,6 +8674,7 @@ "tasktips": 1, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -8509,15 +8712,15 @@ "des": 1, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_169", + "key": "worldtask_world_task_task_name_170", "text": "消失的马鞍" }, "task_details": { - "key": "worldtask_world_task_task_details_169", + "key": "worldtask_world_task_task_details_170", "text": "阿比盖尔的失物找回" }, "npctxt": { - "key": "worldtask_world_task_npctxt_169", + "key": "worldtask_world_task_npctxt_170", "text": "阿比盖尔的失物找回" }, "get_item": [], @@ -8532,6 +8735,7 @@ "tasktips": 1, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -8569,15 +8773,15 @@ "des": 1, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_170", + "key": "worldtask_world_task_task_name_171", "text": "岌岌可危的魔药" }, "task_details": { - "key": "worldtask_world_task_task_details_170", + "key": "worldtask_world_task_task_details_171", "text": "骇客蛛感受到了异样的气息,她需要你的帮助。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_170", + "key": "worldtask_world_task_npctxt_171", "text": "骇客蛛的紧急委托" }, "get_item": [], @@ -8592,6 +8796,7 @@ "tasktips": 1, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -8629,15 +8834,15 @@ "des": 1, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_171", + "key": "worldtask_world_task_task_name_172", "text": "躁动的羊群" }, "task_details": { - "key": "worldtask_world_task_task_details_171", + "key": "worldtask_world_task_task_details_172", "text": "不知为何,羊群近日愈发躁动,或许你能帮助希卡普摆平这件事情。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_171", + "key": "worldtask_world_task_npctxt_172", "text": "希卡普的紧急委托" }, "get_item": [], @@ -8652,6 +8857,7 @@ "tasktips": 1, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -8689,15 +8895,15 @@ "des": 1, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_172", + "key": "worldtask_world_task_task_name_173", "text": "和邦尼兔联手" }, "task_details": { - "key": "worldtask_world_task_task_details_172", + "key": "worldtask_world_task_task_details_173", "text": "豺狼们再次聚集了起来,在他们壮大之前必须先行捣毁。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_172", + "key": "worldtask_world_task_npctxt_173", "text": "邦尼兔的紧急委托" }, "get_item": [], @@ -8712,6 +8918,7 @@ "tasktips": 1, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -8749,15 +8956,15 @@ "des": 1, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_173", + "key": "worldtask_world_task_task_name_174", "text": "捣乱鼠窝" }, "task_details": { - "key": "worldtask_world_task_task_details_173", + "key": "worldtask_world_task_task_details_174", "text": "森林传来的低吼,或是豺狼们潜入了进来。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_173", + "key": "worldtask_world_task_npctxt_174", "text": "骇客蛛的委托" }, "get_item": [], @@ -8772,6 +8979,7 @@ "tasktips": 1, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -8809,15 +9017,15 @@ "des": 1, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_174", + "key": "worldtask_world_task_task_name_175", "text": "狂妄之徒" }, "task_details": { - "key": "worldtask_world_task_task_details_174", + "key": "worldtask_world_task_task_details_175", "text": "埃雷特的手下近日行为有些异常,或许是该敲打一番了。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_174", + "key": "worldtask_world_task_npctxt_175", "text": "希卡普的发现" }, "get_item": [], @@ -8832,6 +9040,7 @@ "tasktips": 1, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -8869,15 +9078,15 @@ "des": 1, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_175", + "key": "worldtask_world_task_task_name_176", "text": "清理所有怪物6" }, "task_details": { - "key": "worldtask_world_task_task_details_175", + "key": "worldtask_world_task_task_details_176", "text": "清理所有怪物6" }, "npctxt": { - "key": "worldtask_world_task_npctxt_175", + "key": "worldtask_world_task_npctxt_176", "text": "清理所有怪物6" }, "get_item": [], @@ -8892,6 +9101,7 @@ "tasktips": 1, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -8929,15 +9139,15 @@ "des": 1, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_176", + "key": "worldtask_world_task_task_name_177", "text": "神秘的身影" }, "task_details": { - "key": "worldtask_world_task_task_details_176", + "key": "worldtask_world_task_task_details_177", "text": "最近城中出现了一些陌生面孔,鬼鬼祟祟,邦尼兔要你前去调查。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_176", + "key": "worldtask_world_task_npctxt_177", "text": "邦尼兔的请求" }, "get_item": [], @@ -8954,6 +9164,7 @@ "tasktips": 1, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -8991,15 +9202,15 @@ "des": 1, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_177", + "key": "worldtask_world_task_task_name_178", "text": "不翼而飞的药材" }, "task_details": { - "key": "worldtask_world_task_task_details_177", + "key": "worldtask_world_task_task_details_178", "text": "菲欧娜的一些药材不翼而飞了,她请求你帮助查清真相。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_177", + "key": "worldtask_world_task_npctxt_178", "text": "菲欧娜的请求" }, "get_item": [], @@ -9016,6 +9227,7 @@ "tasktips": 1, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -9053,15 +9265,15 @@ "des": 1, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_178", + "key": "worldtask_world_task_task_name_179", "text": "被偷走的铁块" }, "task_details": { - "key": "worldtask_world_task_task_details_178", + "key": "worldtask_world_task_task_details_179", "text": "戈伯正在借酒浇愁,他的铁块不见了。他寻求你的帮助。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_178", + "key": "worldtask_world_task_npctxt_179", "text": "戈伯的请求" }, "get_item": [], @@ -9078,6 +9290,7 @@ "tasktips": 1, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -9115,15 +9328,15 @@ "des": 1, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_179", + "key": "worldtask_world_task_task_name_180", "text": "林中小蘑菇" }, "task_details": { - "key": "worldtask_world_task_task_details_179", + "key": "worldtask_world_task_task_details_180", "text": "平先生想要研发一道新的配方,为此需要找到传说中的一种蘑菇。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_179", + "key": "worldtask_world_task_npctxt_180", "text": "平先生的请求" }, "get_item": [], @@ -9140,6 +9353,7 @@ "tasktips": 1, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -9177,15 +9391,15 @@ "des": 1, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_180", + "key": "worldtask_world_task_task_name_181", "text": "闪光之宝" }, "task_details": { - "key": "worldtask_world_task_task_details_180", + "key": "worldtask_world_task_task_details_181", "text": "骇客蛛发现城内突然出现了一些怪异的光芒,遂派你前去调查。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_180", + "key": "worldtask_world_task_npctxt_181", "text": "骇客蛛的请求" }, "get_item": [], @@ -9202,6 +9416,7 @@ "tasktips": 1, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -9239,15 +9454,15 @@ "des": 1, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_181", + "key": "worldtask_world_task_task_name_182", "text": "慰问的包子" }, "task_details": { - "key": "worldtask_world_task_task_details_181", + "key": "worldtask_world_task_task_details_182", "text": "阿宝委托平先生做了一批包子慰问警卫人员,但阿宝临时有事无法送去。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_181", + "key": "worldtask_world_task_npctxt_182", "text": "阿宝的心事" }, "get_item": [], @@ -9260,6 +9475,7 @@ "tasktips": 1, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -9297,15 +9513,15 @@ "des": 1, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_182", + "key": "worldtask_world_task_task_name_183", "text": "寻找平先生" }, "task_details": { - "key": "worldtask_world_task_task_details_182", + "key": "worldtask_world_task_task_details_183", "text": "平先生已经把包子做好了,就等人来送了。好香啊!" }, "npctxt": { - "key": "worldtask_world_task_npctxt_182", + "key": "worldtask_world_task_npctxt_183", "text": "寻找平先生" }, "get_item": [], @@ -9320,6 +9536,7 @@ "tasktips": 1, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -9357,15 +9574,15 @@ "des": 1, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_183", + "key": "worldtask_world_task_task_name_184", "text": "特殊的卷轴" }, "task_details": { - "key": "worldtask_world_task_task_details_183", + "key": "worldtask_world_task_task_details_184", "text": "悍娇虎委托金猴去找一份卷轴,但金猴却突然失踪了。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_183", + "key": "worldtask_world_task_npctxt_184", "text": "阿宝的想法" }, "get_item": [], @@ -9378,6 +9595,7 @@ "tasktips": 1, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -9415,15 +9633,15 @@ "des": 1, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_184", + "key": "worldtask_world_task_task_name_185", "text": "寻找金猴" }, "task_details": { - "key": "worldtask_world_task_task_details_184", + "key": "worldtask_world_task_task_details_185", "text": "金猴似乎就在不远处,但他看起来很生气。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_184", + "key": "worldtask_world_task_npctxt_185", "text": "寻找金猴" }, "get_item": [], @@ -9438,6 +9656,7 @@ "tasktips": 1, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -9475,15 +9694,15 @@ "des": 1, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_185", + "key": "worldtask_world_task_task_name_186", "text": "特别的生日蛋糕" }, "task_details": { - "key": "worldtask_world_task_task_details_185", + "key": "worldtask_world_task_task_details_186", "text": "菲欧娜委托姜饼人给匹诺曹做了个特别的蛋糕,需要你帮忙拿一下。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_185", + "key": "worldtask_world_task_npctxt_186", "text": "菲欧娜的心事" }, "get_item": [], @@ -9496,6 +9715,7 @@ "tasktips": 1, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -9533,15 +9753,15 @@ "des": 1, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_186", + "key": "worldtask_world_task_task_name_187", "text": "寻找姜饼人" }, "task_details": { - "key": "worldtask_world_task_task_details_186", + "key": "worldtask_world_task_task_details_187", "text": "姜饼人正在疯狂擀着面团,不知道为啥那些面团里有些裙子珠串之类的东西。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_186", + "key": "worldtask_world_task_npctxt_187", "text": "寻找姜饼人" }, "get_item": [], @@ -9556,6 +9776,7 @@ "tasktips": 1, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -9593,15 +9814,15 @@ "des": 1, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_187", + "key": "worldtask_world_task_task_name_188", "text": "狐狸,狼,警长" }, "task_details": { - "key": "worldtask_world_task_task_details_187", + "key": "worldtask_world_task_task_details_188", "text": "沃尔夫想要你给戴安狐送信……尽管他俩近在咫尺。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_187", + "key": "worldtask_world_task_npctxt_188", "text": "黛安狐的心事" }, "get_item": [], @@ -9616,6 +9837,7 @@ "tasktips": 1, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -9653,15 +9875,15 @@ "des": 1, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_188", + "key": "worldtask_world_task_task_name_189", "text": "神秘药剂配方" }, "task_details": { - "key": "worldtask_world_task_task_details_188", + "key": "worldtask_world_task_task_details_189", "text": "菲欧娜正在研发一种新型的神秘药剂,但现在还缺少一种药材:猫的胡子。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_188", + "key": "worldtask_world_task_npctxt_189", "text": "菲欧娜有事相求" }, "get_item": [], @@ -9674,6 +9896,7 @@ "tasktips": 1, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -9711,15 +9934,15 @@ "des": 1, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_189", + "key": "worldtask_world_task_task_name_190", "text": "靴猫的胡子" }, "task_details": { - "key": "worldtask_world_task_task_details_189", + "key": "worldtask_world_task_task_details_190", "text": "去找靴子猫,他会给出什么样的胡子呢?" }, "npctxt": { - "key": "worldtask_world_task_npctxt_189", + "key": "worldtask_world_task_npctxt_190", "text": "去看看靴子猫" }, "get_item": [], @@ -9734,6 +9957,7 @@ "tasktips": 1, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -9771,15 +9995,15 @@ "des": 6, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_190", + "key": "worldtask_world_task_task_name_191", "text": "希卡普的礼物" }, "task_details": { - "key": "worldtask_world_task_task_details_190", + "key": "worldtask_world_task_task_details_191", "text": "铁匠铺发现一个非常奇怪的礼盒,戈伯让我交给希卡普,我们可以看看希卡普怎么说" }, "npctxt": { - "key": "worldtask_world_task_npctxt_190", + "key": "worldtask_world_task_npctxt_191", "text": "铁匠铺逛逛" }, "get_item": [], @@ -9794,6 +10018,7 @@ "tasktips": 1, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -9816,15 +10041,15 @@ "des": 6, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_191", + "key": "worldtask_world_task_task_name_192", "text": "奇妙玩偶" }, "task_details": { - "key": "worldtask_world_task_task_details_191", + "key": "worldtask_world_task_task_details_192", "text": "在武馆发现了一个长得像螳螂的玩偶,或许还有其他跟多的玩偶,他们都在哪儿呢?" }, "npctxt": { - "key": "worldtask_world_task_npctxt_191", + "key": "worldtask_world_task_npctxt_192", "text": "武馆的角落内?" }, "get_item": [], @@ -9842,6 +10067,7 @@ "tasktips": 1, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -9864,15 +10090,15 @@ "des": 6, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_192", + "key": "worldtask_world_task_task_name_193", "text": "花盆下的秘密" }, "task_details": { - "key": "worldtask_world_task_task_details_192", + "key": "worldtask_world_task_task_details_193", "text": "无意间在花盆下找到一封满是思念的信封,里面包含着师傅部分的往事,或许我可以问一下师傅。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_192", + "key": "worldtask_world_task_npctxt_193", "text": "翻找花盆" }, "get_item": [], @@ -9887,6 +10113,7 @@ "tasktips": 1, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { @@ -9909,15 +10136,15 @@ "des": 6, "icon": "25001", "task_name": { - "key": "worldtask_world_task_task_name_193", + "key": "worldtask_world_task_task_name_194", "text": "往日追忆" }, "task_details": { - "key": "worldtask_world_task_task_details_193", + "key": "worldtask_world_task_task_details_194", "text": "无人的时候,希卡普会一个人静静看着海洋,看上去是如此的落寞,我或许可以和他聊聊。" }, "npctxt": { - "key": "worldtask_world_task_npctxt_193", + "key": "worldtask_world_task_npctxt_194", "text": "和希卡普聊聊" }, "get_item": [], @@ -9932,6 +10159,7 @@ "tasktips": 1, "lock_add": 0, "finish": [], + "finishparameter": "", "fnishipoint": [], "reword": [ { diff --git a/modules/moonlv/comp_configure.go b/modules/moonlv/comp_configure.go index c06db5184..60e5a8304 100644 --- a/modules/moonlv/comp_configure.go +++ b/modules/moonlv/comp_configure.go @@ -7,17 +7,20 @@ import ( "go_dreamfactory/modules" "go_dreamfactory/sys/configure" cfg "go_dreamfactory/sys/configure/structs" + "sync" ) const ( - pandaJx = "game_pandamasjx.json" // 武馆教习 - + monnlv = "game_moonlv.json" + monntask = "game_moontask.json" ) // /配置管理基础组件 type configureComp struct { modules.MCompConfigure - module *Moonlv + module *Moonlv + hlock sync.RWMutex + taskgroup map[int32][]*cfg.GameMoonTaskData } // 组件初始化接口 @@ -25,11 +28,27 @@ func (this *configureComp) Init(service core.IService, module core.IModule, comp err = this.MCompConfigure.Init(service, module, comp, options) this.module = module.(*Moonlv) err = this.LoadMultiConfigure(map[string]interface{}{ - pandaJx: cfg.NewGamePandamasJx, + monnlv: cfg.NewGameMoonLv, + monntask: cfg.NewGameMoonTask, }) - + configure.RegisterConfigure(monntask, cfg.NewGameMoonTask, this.LoadGameMoonTaskData) return } +func (this *configureComp) LoadGameMoonTaskData() { + if v, err := this.GetConfigure(monntask); err == nil { + if configure, ok := v.(*cfg.GameMoonTask); ok { + this.hlock.Lock() + this.taskgroup = make(map[int32][]*cfg.GameMoonTaskData, 0) + defer this.hlock.Unlock() + for _, value := range configure.GetDataList() { + this.taskgroup[value.TaskGroup] = append(this.taskgroup[value.TaskGroup], value) + } + return + } + } else { + log.Errorf("get LoadGameMoonTaskData conf err:%v", err) + } +} // 加载多个配置文件 func (this *configureComp) LoadMultiConfigure(confs map[string]interface{}) (err error) { @@ -48,17 +67,17 @@ func (this *configureComp) GetConfigure(name string) (v interface{}, err error) return configure.GetConfigure(name) } -// 获取教习数据 -func (this *configureComp) GetPandoJxConf(id string) (conf *cfg.GamePandamasJxData, err error) { - - if v, err := this.GetConfigure(pandaJx); err == nil { - if configure, ok := v.(*cfg.GamePandamasJx); ok { - if conf = configure.Get(id); conf == nil { - err = comm.NewNotFoundConfErr("atlas", pandaJx, id) - this.module.Errorln(err) +func (this *configureComp) GetMoonLvConf(lv int32) (conf *cfg.GameMoonLvData, err error) { + var ( + v interface{} + ) + if v, err = this.GetConfigure(monnlv); err == nil { + if configure, ok := v.(*cfg.GameMoonLv); ok { + if conf = configure.Get(lv); conf != nil { + return } } } - err = comm.NewNotFoundConfErr("atlas", pandaJx, id) + err = comm.NewNotFoundConfErr("moonlv", monnlv, lv) return } diff --git a/modules/moonlv/module.go b/modules/moonlv/module.go index 89ec171a2..bbcc047bc 100644 --- a/modules/moonlv/module.go +++ b/modules/moonlv/module.go @@ -3,7 +3,9 @@ package moonlv import ( "go_dreamfactory/comm" "go_dreamfactory/lego/core" + "go_dreamfactory/lego/sys/log" "go_dreamfactory/modules" + "go_dreamfactory/pb" ) type Moonlv struct { @@ -36,3 +38,7 @@ func (this *Moonlv) OnInstallComp() { this.configure = this.RegisterComp(new(configureComp)).(*configureComp) this.modelMoonlv = this.RegisterComp(new(modelMoonlv)).(*modelMoonlv) } +func (this *Moonlv) BuriedsNotify(session comm.IUserSession, conds []*pb.ConIProgress) { + this.Debug("护月任务通知", log.Field{Key: "uid", Value: session.GetUserId()}, log.Field{Key: "conds", Value: conds}) + +} diff --git a/sys/configure/structs/Game.MoonLv.go b/sys/configure/structs/Game.MoonLv.go new file mode 100644 index 000000000..8c2b96348 --- /dev/null +++ b/sys/configure/structs/Game.MoonLv.go @@ -0,0 +1,42 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +package cfg + +type GameMoonLv struct { + _dataMap map[int32]*GameMoonLvData + _dataList []*GameMoonLvData +} + +func NewGameMoonLv(_buf []map[string]interface{}) (*GameMoonLv, error) { + _dataList := make([]*GameMoonLvData, 0, len(_buf)) + dataMap := make(map[int32]*GameMoonLvData) + for _, _ele_ := range _buf { + if _v, err2 := DeserializeGameMoonLvData(_ele_); err2 != nil { + return nil, err2 + } else { + _dataList = append(_dataList, _v) + dataMap[_v.Id] = _v + } + } + return &GameMoonLv{_dataList:_dataList, _dataMap:dataMap}, nil +} + +func (table *GameMoonLv) GetDataMap() map[int32]*GameMoonLvData { + return table._dataMap +} + +func (table *GameMoonLv) GetDataList() []*GameMoonLvData { + return table._dataList +} + +func (table *GameMoonLv) Get(key int32) *GameMoonLvData { + return table._dataMap[key] +} + + diff --git a/sys/configure/structs/Game.MoonLvData.go b/sys/configure/structs/Game.MoonLvData.go new file mode 100644 index 000000000..bd8f69677 --- /dev/null +++ b/sys/configure/structs/Game.MoonLvData.go @@ -0,0 +1,54 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +package cfg + +import "errors" + +type GameMoonLvData struct { + Id int32 + Level int32 + TaskGroupId int32 + Reward []*Gameatn +} + +const TypeId_GameMoonLvData = -360801743 + +func (*GameMoonLvData) GetTypeId() int32 { + return -360801743 +} + +func (_v *GameMoonLvData)Deserialize(_buf map[string]interface{}) (err error) { + { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["Id"].(float64); !_ok_ { err = errors.New("Id error"); return }; _v.Id = int32(_tempNum_) } + { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["Level"].(float64); !_ok_ { err = errors.New("Level error"); return }; _v.Level = int32(_tempNum_) } + { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["TaskGroupId"].(float64); !_ok_ { err = errors.New("TaskGroupId error"); return }; _v.TaskGroupId = int32(_tempNum_) } + { + var _arr_ []interface{} + var _ok_ bool + if _arr_, _ok_ = _buf["Reward"].([]interface{}); !_ok_ { err = errors.New("Reward error"); return } + + _v.Reward = make([]*Gameatn, 0, len(_arr_)) + + for _, _e_ := range _arr_ { + var _list_v_ *Gameatn + { var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _e_.(map[string]interface{}); !_ok_ { err = errors.New("_list_v_ error"); return }; if _list_v_, err = DeserializeGameatn(_x_); err != nil { return } } + _v.Reward = append(_v.Reward, _list_v_) + } + } + + return +} + +func DeserializeGameMoonLvData(_buf map[string]interface{}) (*GameMoonLvData, error) { + v := &GameMoonLvData{} + if err := v.Deserialize(_buf); err == nil { + return v, nil + } else { + return nil, err + } +} diff --git a/sys/configure/structs/Game.MoonTask.go b/sys/configure/structs/Game.MoonTask.go new file mode 100644 index 000000000..be1aa966b --- /dev/null +++ b/sys/configure/structs/Game.MoonTask.go @@ -0,0 +1,42 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +package cfg + +type GameMoonTask struct { + _dataMap map[int32]*GameMoonTaskData + _dataList []*GameMoonTaskData +} + +func NewGameMoonTask(_buf []map[string]interface{}) (*GameMoonTask, error) { + _dataList := make([]*GameMoonTaskData, 0, len(_buf)) + dataMap := make(map[int32]*GameMoonTaskData) + for _, _ele_ := range _buf { + if _v, err2 := DeserializeGameMoonTaskData(_ele_); err2 != nil { + return nil, err2 + } else { + _dataList = append(_dataList, _v) + dataMap[_v.Id] = _v + } + } + return &GameMoonTask{_dataList:_dataList, _dataMap:dataMap}, nil +} + +func (table *GameMoonTask) GetDataMap() map[int32]*GameMoonTaskData { + return table._dataMap +} + +func (table *GameMoonTask) GetDataList() []*GameMoonTaskData { + return table._dataList +} + +func (table *GameMoonTask) Get(key int32) *GameMoonTaskData { + return table._dataMap[key] +} + + diff --git a/sys/configure/structs/Game.MoonTaskData.go b/sys/configure/structs/Game.MoonTaskData.go new file mode 100644 index 000000000..c43e352a7 --- /dev/null +++ b/sys/configure/structs/Game.MoonTaskData.go @@ -0,0 +1,56 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +package cfg + +import "errors" + +type GameMoonTaskData struct { + Id int32 + TaskGroup int32 + TaskId int32 + TaskReward []*Gameatn + JumpFunction int32 +} + +const TypeId_GameMoonTaskData = 2115127660 + +func (*GameMoonTaskData) GetTypeId() int32 { + return 2115127660 +} + +func (_v *GameMoonTaskData)Deserialize(_buf map[string]interface{}) (err error) { + { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["Id"].(float64); !_ok_ { err = errors.New("Id error"); return }; _v.Id = int32(_tempNum_) } + { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["TaskGroup"].(float64); !_ok_ { err = errors.New("TaskGroup error"); return }; _v.TaskGroup = int32(_tempNum_) } + { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["TaskId"].(float64); !_ok_ { err = errors.New("TaskId error"); return }; _v.TaskId = int32(_tempNum_) } + { + var _arr_ []interface{} + var _ok_ bool + if _arr_, _ok_ = _buf["TaskReward"].([]interface{}); !_ok_ { err = errors.New("TaskReward error"); return } + + _v.TaskReward = make([]*Gameatn, 0, len(_arr_)) + + for _, _e_ := range _arr_ { + var _list_v_ *Gameatn + { var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _e_.(map[string]interface{}); !_ok_ { err = errors.New("_list_v_ error"); return }; if _list_v_, err = DeserializeGameatn(_x_); err != nil { return } } + _v.TaskReward = append(_v.TaskReward, _list_v_) + } + } + + { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["JumpFunction"].(float64); !_ok_ { err = errors.New("JumpFunction error"); return }; _v.JumpFunction = int32(_tempNum_) } + return +} + +func DeserializeGameMoonTaskData(_buf map[string]interface{}) (*GameMoonTaskData, error) { + v := &GameMoonTaskData{} + if err := v.Deserialize(_buf); err == nil { + return v, nil + } else { + return nil, err + } +} diff --git a/sys/configure/structs/Game.WorldTaskData.go b/sys/configure/structs/Game.WorldTaskData.go index d5878b636..47a1e209c 100644 --- a/sys/configure/structs/Game.WorldTaskData.go +++ b/sys/configure/structs/Game.WorldTaskData.go @@ -34,6 +34,7 @@ type GameWorldTaskData struct { Tasktips int32 LockAdd int32 Finish []int32 + Finishparameter string Fnishipoint []string Reword []*Gameatn Module []string @@ -121,6 +122,7 @@ func (_v *GameWorldTaskData)Deserialize(_buf map[string]interface{}) (err error) } } + { var _ok_ bool; if _v.Finishparameter, _ok_ = _buf["finishparameter"].(string); !_ok_ { err = errors.New("finishparameter error"); return } } { var _arr_ []interface{} var _ok_ bool diff --git a/sys/configure/structs/Tables.go b/sys/configure/structs/Tables.go index f4928583c..edcce33a9 100644 --- a/sys/configure/structs/Tables.go +++ b/sys/configure/structs/Tables.go @@ -301,6 +301,8 @@ type Tables struct { CatchbugLllustrated *GameCatchbugLllustrated CatchbugSkill *GameCatchbugSkill Effect *GameEffect + MoonLv *GameMoonLv + MoonTask *GameMoonTask } func NewTables(loader JsonLoader) (*Tables, error) { @@ -2048,5 +2050,17 @@ func NewTables(loader JsonLoader) (*Tables, error) { if tables.Effect, err = NewGameEffect(buf) ; err != nil { return nil, err } + if buf, err = loader("game_moonlv") ; err != nil { + return nil, err + } + if tables.MoonLv, err = NewGameMoonLv(buf) ; err != nil { + return nil, err + } + if buf, err = loader("game_moontask") ; err != nil { + return nil, err + } + if tables.MoonTask, err = NewGameMoonTask(buf) ; err != nil { + return nil, err + } return tables, nil } From c7d0db97f9f5888268c5e229aef9d7717d088107 Mon Sep 17 00:00:00 2001 From: meixiongfeng <766881921@qq.com> Date: Tue, 14 Nov 2023 16:49:42 +0800 Subject: [PATCH 4/5] =?UTF-8?q?=E6=8A=A4=E6=9C=88=E4=BB=BB=E5=8A=A1?= =?UTF-8?q?=E6=88=90=E5=B0=B1=E7=9B=B8=E5=85=B3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/moonlv/api_atlasactivate.go | 26 - modules/moonlv/api_atlasaward.go | 20 - modules/moonlv/api_lvaward.go | 74 +++ modules/moonlv/api_receive.go | 79 +++ modules/moonlv/comp_configure.go | 28 ++ modules/moonlv/model_moonlv.go | 34 ++ modules/moonlv/module.go | 75 ++- pb/errorcode.pb.go | 756 ++++++++++++++-------------- 8 files changed, 668 insertions(+), 424 deletions(-) delete mode 100644 modules/moonlv/api_atlasactivate.go delete mode 100644 modules/moonlv/api_atlasaward.go create mode 100644 modules/moonlv/api_lvaward.go create mode 100644 modules/moonlv/api_receive.go diff --git a/modules/moonlv/api_atlasactivate.go b/modules/moonlv/api_atlasactivate.go deleted file mode 100644 index 089630cad..000000000 --- a/modules/moonlv/api_atlasactivate.go +++ /dev/null @@ -1,26 +0,0 @@ -package moonlv - -import ( - "go_dreamfactory/comm" - "go_dreamfactory/pb" -) - -//参数校验 -func (this *apiComp) ActivateCheck(session comm.IUserSession, req *pb.AtlasActivateReq) (errdata *pb.ErrorData) { - if req.Id == "" { - errdata = &pb.ErrorData{ - Code: pb.ErrorCode_ReqParameterError, - Title: pb.ErrorCode_ReqParameterError.ToString(), - } - } - return -} - -// 激活图鉴信息 -func (this *apiComp) Activate(session comm.IUserSession, req *pb.AtlasActivateReq) (errdata *pb.ErrorData) { - if errdata = this.ActivateCheck(session, req); errdata != nil { - return - } - - return -} diff --git a/modules/moonlv/api_atlasaward.go b/modules/moonlv/api_atlasaward.go deleted file mode 100644 index 46eff30cd..000000000 --- a/modules/moonlv/api_atlasaward.go +++ /dev/null @@ -1,20 +0,0 @@ -package moonlv - -import ( - "go_dreamfactory/comm" - "go_dreamfactory/pb" -) - -//参数校验 -func (this *apiComp) AwardCheck(session comm.IUserSession, req *pb.AtlasAwardReq) (errdata *pb.ErrorData) { - - return -} - -// 一键领取所有可以领取的奖励 -func (this *apiComp) Award(session comm.IUserSession, req *pb.AtlasAwardReq) (errdata *pb.ErrorData) { - - session.SendMsg(string(this.module.GetType()), "award", &pb.AtlasAwardResp{}) - - return -} diff --git a/modules/moonlv/api_lvaward.go b/modules/moonlv/api_lvaward.go new file mode 100644 index 000000000..bc2d9e88e --- /dev/null +++ b/modules/moonlv/api_lvaward.go @@ -0,0 +1,74 @@ +package moonlv + +import ( + "go_dreamfactory/comm" + "go_dreamfactory/pb" +) + +//参数校验 +func (this *apiComp) AwardCheck(session comm.IUserSession, req *pb.MoonlvAwardReq) (errdata *pb.ErrorData) { + if req.Lv == 0 { + errdata = &pb.ErrorData{ + Code: pb.ErrorCode_ReqParameterError, + Title: pb.ErrorCode_ReqParameterError.ToString(), + } + } + return +} + +// 领取等级奖励 +func (this *apiComp) Award(session comm.IUserSession, req *pb.MoonlvAwardReq) (errdata *pb.ErrorData) { + var ( + update map[string]interface{} + ) + update = make(map[string]interface{}, 0) + list, err := this.module.modelMoonlv.getMoonlvList(session.GetUserId()) + if err != nil { + errdata = &pb.ErrorData{ + Code: pb.ErrorCode_DBError, + Title: pb.ErrorCode_DBError.ToString(), + } + return + } + if _, ok := list.Reward[req.Lv]; ok { + errdata = &pb.ErrorData{ + Code: pb.ErrorCode_TaskRepeatedReward, + Title: pb.ErrorCode_TaskRepeatedReward.ToString(), + } + return + } + for _, v := range list.Tasks { + if v.Received != 2 { // 只要有未领取的就不能升级 + errdata = &pb.ErrorData{ + Code: pb.ErrorCode_TaskNoFinished, + Title: pb.ErrorCode_TaskNoFinished.ToString(), + } + return + } + } + + if _, err := this.module.configure.GetMoonLvConf(list.Lv + 1); err != nil { // 查看能不能继续升级 + list.Lv += 1 + update["lv"] = list.Lv + // 升级了清空当前任务 + list.Tasks = nil + update["task"] = list.Tasks + } + list.Reward[req.Lv] = true + update["reward"] = list.Reward + if err := this.module.modelMoonlv.modifyMoonlvList(session.GetUserId(), update); err != nil { + this.module.Error(err.Error()) + errdata = &pb.ErrorData{ + Code: pb.ErrorCode_DBError, + Title: pb.ErrorCode_DBError.ToString(), + Message: err.Error(), + } + return + } + session.SendMsg(string(this.module.GetType()), "award", &pb.MoonlvAwardResp{ + Data: &pb.DBMoonLv{}, + Res: []*pb.UserAssets{}, + }) + + return +} diff --git a/modules/moonlv/api_receive.go b/modules/moonlv/api_receive.go new file mode 100644 index 000000000..bc5f0619d --- /dev/null +++ b/modules/moonlv/api_receive.go @@ -0,0 +1,79 @@ +package moonlv + +import ( + "errors" + "go_dreamfactory/comm" + "go_dreamfactory/pb" +) + +// 任务奖励领取 +func (this *apiComp) TaskAwardCheck(session comm.IUserSession, req *pb.MoonlvTaskAwardReq) (errdata *pb.ErrorData) { + if req.TaskId == 0 { + errdata = &pb.ErrorData{ + Code: pb.ErrorCode_ReqParameterError, + Title: pb.ErrorCode_ReqParameterError.ToString(), + } + } + return +} + +func (this *apiComp) TaskAward(session comm.IUserSession, req *pb.MoonlvTaskAwardReq) (errdata *pb.ErrorData) { + var ( + atno []*pb.UserAtno + list *pb.DBMoonLv + err error + ) + + if errdata = this.TaskAwardCheck(session, req); errdata != nil { + return + } + list, err = this.module.modelMoonlv.getMoonlvList(session.GetUserId()) + if err != nil { + errdata = &pb.ErrorData{ + Code: pb.ErrorCode_DBError, + Title: pb.ErrorCode_DBError.ToString(), + Message: err.Error(), + } + return + } + if err := this.module.modelMoonlv.updateTaskRecord(session.GetUserId(), req.TaskId, list); err != nil { + var errCustom = new(comm.CustomError) + if errors.As(err, &errCustom) { + errdata = &pb.ErrorData{ + Code: errCustom.Code, + Title: errCustom.Code.ToString(), + Message: err.Error(), + } + } else { + errdata = &pb.ErrorData{ + Code: pb.ErrorCode_DBError, + Title: pb.ErrorCode_DBError.ToString(), + Message: err.Error(), + } + } + return + } + if conf, err := this.module.configure.GetMoonLvTaskConfByTaskId(list.Lv, req.TaskId); err != nil { + errdata = &pb.ErrorData{ + Code: pb.ErrorCode_ConfigNoFound, + Title: pb.ErrorCode_ConfigNoFound.ToString(), + Message: err.Error(), + } + return + } else { + if errdata, atno = this.module.DispenseAtno(session, conf.TaskReward, true); errdata != nil { + return + } + } + + session.SendMsg(string(this.module.GetType()), "taskaward", &pb.MoonlvTaskAwardResp{ + TaskId: req.TaskId, + Reward: atno, + Data: list, + }) + + go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) { + this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "MoonlvTaskAwardReq", atno) + }) + return +} diff --git a/modules/moonlv/comp_configure.go b/modules/moonlv/comp_configure.go index 60e5a8304..ec78a287e 100644 --- a/modules/moonlv/comp_configure.go +++ b/modules/moonlv/comp_configure.go @@ -34,6 +34,7 @@ func (this *configureComp) Init(service core.IService, module core.IModule, comp configure.RegisterConfigure(monntask, cfg.NewGameMoonTask, this.LoadGameMoonTaskData) return } + func (this *configureComp) LoadGameMoonTaskData() { if v, err := this.GetConfigure(monntask); err == nil { if configure, ok := v.(*cfg.GameMoonTask); ok { @@ -81,3 +82,30 @@ func (this *configureComp) GetMoonLvConf(lv int32) (conf *cfg.GameMoonLvData, er err = comm.NewNotFoundConfErr("moonlv", monnlv, lv) return } + +func (this *configureComp) GetMoonLvTaskConf(groupId int32) (conf []*cfg.GameMoonTaskData, err error) { + var ok bool + this.hlock.Lock() + conf, ok = this.taskgroup[groupId] + this.hlock.Unlock() + if !ok { + err = comm.NewNotFoundConfErr("moonlv", monntask, groupId) + } + return +} + +func (this *configureComp) GetMoonLvTaskConfByTaskId(groupId int32, taskid int32) (conf *cfg.GameMoonTaskData, err error) { + this.hlock.Lock() + list, ok := this.taskgroup[groupId] + this.hlock.Unlock() + if !ok { + err = comm.NewNotFoundConfErr("moonlv", monntask, groupId) + } + for _, v := range list { + if v.TaskId == taskid { + conf = v + return + } + } + return +} diff --git a/modules/moonlv/model_moonlv.go b/modules/moonlv/model_moonlv.go index 8a441c036..a78b82f8f 100644 --- a/modules/moonlv/model_moonlv.go +++ b/modules/moonlv/model_moonlv.go @@ -33,6 +33,7 @@ func (this *modelMoonlv) getMoonlvList(uid string) (result *pb.DBMoonLv, err err if mongo.ErrNoDocuments == err { result.Id = primitive.NewObjectID().Hex() result.Uid = uid + result.Lv = 1 // 默认1级 result.Reward = make(map[int32]bool) this.Add(uid, result) err = nil @@ -45,3 +46,36 @@ func (this *modelMoonlv) getMoonlvList(uid string) (result *pb.DBMoonLv, err err func (this *modelMoonlv) modifyMoonlvList(uid string, data map[string]interface{}) error { return this.Change(uid, data) } +func (this *modelMoonlv) getTaskRecord(uid string) (*pb.DBTujianTask, error) { + tt := &pb.DBTujianTask{Uid: uid} + if err := this.Get(uid, tt); err != nil { + return tt, err + } + return tt, nil +} + +func (this *modelMoonlv) updateTaskRecord(uid string, taskId int32, dt *pb.DBMoonLv) error { + + update := make(map[string]interface{}) + for _, v := range dt.Tasks { + if v.TaskId == taskId { + if v.Received == 1 { + v.Received = 2 + } else if v.Received == 2 { + return comm.NewCustomError(pb.ErrorCode_SmithyTaskReceived) + } else { + return comm.NewCustomError(pb.ErrorCode_SmithyTaskNoFinished) + } + break + } + } + update["tasks"] = dt.Tasks + + if len(update) > 0 { + if err := this.Change(uid, update); err != nil { + return err + } + } + + return nil +} diff --git a/modules/moonlv/module.go b/modules/moonlv/module.go index bbcc047bc..bf46bd2df 100644 --- a/modules/moonlv/module.go +++ b/modules/moonlv/module.go @@ -38,7 +38,78 @@ func (this *Moonlv) OnInstallComp() { this.configure = this.RegisterComp(new(configureComp)).(*configureComp) this.modelMoonlv = this.RegisterComp(new(modelMoonlv)).(*modelMoonlv) } -func (this *Moonlv) BuriedsNotify(session comm.IUserSession, conds []*pb.ConIProgress) { - this.Debug("护月任务通知", log.Field{Key: "uid", Value: session.GetUserId()}, log.Field{Key: "conds", Value: conds}) +func (this *Moonlv) BuriedsNotify(session comm.IUserSession, conds []*pb.ConIProgress) { + var groupID int32 + this.Debug("护月任务通知", log.Field{Key: "uid", Value: session.GetUserId()}, log.Field{Key: "conds", Value: conds}) + dt, err := this.modelMoonlv.getMoonlvList(session.GetUserId()) + if c, e := this.configure.GetMoonLvConf(dt.Lv); e != nil { + groupID = c.TaskGroupId + } + confList, err := this.configure.GetMoonLvTaskConf(groupID) + if err != nil { + this.Error(err.Error()) + return + } + condMap := make(map[int32]*pb.ConIProgress) + for _, conf := range confList { + for _, cond := range conds { + if cond.Conid == conf.TaskId { + condMap[conf.TaskId] = cond + } + } + } + update := make(map[string]interface{}) + + if dt.Tasks == nil { + for k, v := range condMap { + tt := &pb.MoonTask{ + TaskId: k, + Cond: v, + } + if v.State == pb.BuriedItemFinishState_buried_finish { + tt.Received = 1 + } + dt.Tasks = append(dt.Tasks, tt) + } + update["tasks"] = dt.Tasks + if err := this.modelMoonlv.modifyMoonlvList(session.GetUserId(), update); err != nil { + this.Error(err.Error()) + return + } + return + } + + var newTask []*pb.MoonTask + existTaskMap := make(map[int32]*pb.MoonTask) + for _, task := range dt.Tasks { + existTaskMap[task.TaskId] = task + } + + for k, v := range condMap { + if task, ok := existTaskMap[k]; ok { + task.Cond = v + if v.State == pb.BuriedItemFinishState_buried_finish { + task.Received = 1 + } + } else { + nt := &pb.MoonTask{ + TaskId: k, + Cond: v, + } + if v.State == pb.BuriedItemFinishState_buried_finish { + nt.Received = 1 + } + newTask = append(newTask, nt) + } + } + dt.Tasks = append(dt.Tasks, newTask...) + update["tasks"] = dt.Tasks + + if len(update) > 0 { + if err := this.modelMoonlv.modifyMoonlvList(session.GetUserId(), update); err != nil { + this.Error(err.Error()) + return + } + } } diff --git a/pb/errorcode.pb.go b/pb/errorcode.pb.go index 52af0f11e..442672c45 100644 --- a/pb/errorcode.pb.go +++ b/pb/errorcode.pb.go @@ -189,6 +189,7 @@ const ( ErrorCode_TaskTagEmpty ErrorCode = 1609 //任务类型空 ErrorCode_TaskIdEmpty ErrorCode = 1610 //任务ID空 ErrorCode_TaskNotFound ErrorCode = 1611 //未找到用户任务 + ErrorCode_TaskRepeatedReward ErrorCode = 1612 // 奖励重复领取 // shop ErrorCode_ShopGoodsIsSoldOut ErrorCode = 1700 //商品已售罄 ErrorCode_ShopNoSurplusRefreshNum ErrorCode = 1701 //剩余刷新次数已用完 @@ -623,6 +624,7 @@ var ( 1609: "TaskTagEmpty", 1610: "TaskIdEmpty", 1611: "TaskNotFound", + 1612: "TaskRepeatedReward", 1700: "ShopGoodsIsSoldOut", 1701: "ShopNoSurplusRefreshNum", 1800: "MailErr", @@ -1019,6 +1021,7 @@ var ( "TaskTagEmpty": 1609, "TaskIdEmpty": 1610, "TaskNotFound": 1611, + "TaskRepeatedReward": 1612, "ShopGoodsIsSoldOut": 1700, "ShopNoSurplusRefreshNum": 1701, "MailErr": 1800, @@ -1291,7 +1294,7 @@ var File_errorcode_proto protoreflect.FileDescriptor var file_errorcode_proto_rawDesc = []byte{ 0x0a, 0x0f, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x63, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x2a, 0xa0, 0x49, 0x0a, 0x09, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x12, + 0x6f, 0x2a, 0xb9, 0x49, 0x0a, 0x09, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x00, 0x12, 0x14, 0x0a, 0x10, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x45, 0x78, 0x63, 0x65, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x01, 0x12, 0x11, 0x0a, 0x0d, 0x4e, 0x6f, 0x46, 0x69, 0x6e, 0x64, 0x53, 0x65, 0x72, 0x76, @@ -1504,381 +1507,382 @@ var file_errorcode_proto_rawDesc = []byte{ 0x10, 0xc8, 0x0c, 0x12, 0x11, 0x0a, 0x0c, 0x54, 0x61, 0x73, 0x6b, 0x54, 0x61, 0x67, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x10, 0xc9, 0x0c, 0x12, 0x10, 0x0a, 0x0b, 0x54, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x10, 0xca, 0x0c, 0x12, 0x11, 0x0a, 0x0c, 0x54, 0x61, 0x73, 0x6b, - 0x4e, 0x6f, 0x74, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x10, 0xcb, 0x0c, 0x12, 0x17, 0x0a, 0x12, 0x53, - 0x68, 0x6f, 0x70, 0x47, 0x6f, 0x6f, 0x64, 0x73, 0x49, 0x73, 0x53, 0x6f, 0x6c, 0x64, 0x4f, 0x75, - 0x74, 0x10, 0xa4, 0x0d, 0x12, 0x1c, 0x0a, 0x17, 0x53, 0x68, 0x6f, 0x70, 0x4e, 0x6f, 0x53, 0x75, - 0x72, 0x70, 0x6c, 0x75, 0x73, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x4e, 0x75, 0x6d, 0x10, - 0xa5, 0x0d, 0x12, 0x0c, 0x0a, 0x07, 0x4d, 0x61, 0x69, 0x6c, 0x45, 0x72, 0x72, 0x10, 0x88, 0x0e, - 0x12, 0x13, 0x0a, 0x0e, 0x50, 0x61, 0x67, 0x6f, 0x64, 0x61, 0x4e, 0x6f, 0x74, 0x46, 0x6f, 0x75, - 0x6e, 0x64, 0x10, 0xec, 0x0e, 0x12, 0x12, 0x0a, 0x0d, 0x50, 0x61, 0x67, 0x6f, 0x64, 0x61, 0x4c, - 0x65, 0x76, 0x6c, 0x45, 0x72, 0x72, 0x10, 0xed, 0x0e, 0x12, 0x17, 0x0a, 0x12, 0x50, 0x61, 0x67, - 0x6f, 0x64, 0x61, 0x47, 0x65, 0x74, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x45, 0x72, 0x72, 0x10, - 0xee, 0x0e, 0x12, 0x17, 0x0a, 0x12, 0x50, 0x61, 0x67, 0x6f, 0x64, 0x61, 0x43, 0x6f, 0x6e, 0x64, - 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x72, 0x72, 0x10, 0xef, 0x0e, 0x12, 0x11, 0x0a, 0x0c, 0x50, - 0x61, 0x67, 0x6f, 0x64, 0x61, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x10, 0xf0, 0x0e, 0x12, 0x14, - 0x0a, 0x0f, 0x50, 0x61, 0x67, 0x6f, 0x64, 0x61, 0x54, 0x69, 0x6d, 0x65, 0x45, 0x72, 0x72, 0x6f, - 0x72, 0x10, 0xf1, 0x0e, 0x12, 0x13, 0x0a, 0x0e, 0x50, 0x61, 0x67, 0x6f, 0x64, 0x61, 0x4d, 0x61, - 0x78, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xf2, 0x0e, 0x12, 0x1b, 0x0a, 0x16, 0x4d, 0x61, 0x72, - 0x74, 0x69, 0x61, 0x6c, 0x68, 0x61, 0x6c, 0x6c, 0x4e, 0x6f, 0x74, 0x55, 0x6e, 0x6c, 0x6f, 0x63, - 0x6b, 0x65, 0x64, 0x10, 0xd0, 0x0f, 0x12, 0x15, 0x0a, 0x10, 0x4d, 0x61, 0x72, 0x74, 0x69, 0x61, - 0x6c, 0x68, 0x61, 0x6c, 0x6c, 0x49, 0x6e, 0x55, 0x73, 0x65, 0x10, 0xd1, 0x0f, 0x12, 0x18, 0x0a, - 0x13, 0x4d, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x68, 0x61, 0x6c, 0x6c, 0x55, 0x6e, 0x6c, 0x6f, - 0x63, 0x6b, 0x65, 0x64, 0x10, 0xd2, 0x0f, 0x12, 0x1a, 0x0a, 0x15, 0x4d, 0x61, 0x72, 0x74, 0x69, - 0x61, 0x6c, 0x68, 0x61, 0x6c, 0x6c, 0x4e, 0x6f, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, - 0x10, 0xd3, 0x0f, 0x12, 0x1a, 0x0a, 0x15, 0x4d, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x68, 0x61, - 0x6c, 0x6c, 0x41, 0x74, 0x6c, 0x61, 0x73, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0xd4, 0x0f, 0x12, - 0x1d, 0x0a, 0x18, 0x4d, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x68, 0x61, 0x6c, 0x6c, 0x41, 0x74, - 0x6c, 0x61, 0x73, 0x4e, 0x6f, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0xd5, 0x0f, 0x12, 0x19, - 0x0a, 0x14, 0x47, 0x6f, 0x75, 0x72, 0x6d, 0x65, 0x74, 0x4d, 0x6f, 0x72, 0x65, 0x4f, 0x72, 0x64, - 0x65, 0x72, 0x54, 0x69, 0x6d, 0x65, 0x10, 0xb5, 0x10, 0x12, 0x16, 0x0a, 0x11, 0x47, 0x6f, 0x75, - 0x72, 0x6d, 0x65, 0x74, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x4d, 0x61, 0x78, 0x4c, 0x76, 0x10, 0xb6, - 0x10, 0x12, 0x12, 0x0a, 0x0d, 0x52, 0x74, 0x61, 0x73, 0x6b, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, - 0x65, 0x64, 0x10, 0x99, 0x11, 0x12, 0x14, 0x0a, 0x0f, 0x52, 0x74, 0x61, 0x73, 0x6b, 0x55, 0x6e, - 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x10, 0x9a, 0x11, 0x12, 0x11, 0x0a, 0x0c, 0x52, - 0x74, 0x61, 0x73, 0x6b, 0x4e, 0x6f, 0x52, 0x74, 0x61, 0x73, 0x6b, 0x10, 0x9b, 0x11, 0x12, 0x12, - 0x0a, 0x0d, 0x52, 0x74, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x65, 0x64, 0x10, - 0x9c, 0x11, 0x12, 0x15, 0x0a, 0x10, 0x52, 0x74, 0x61, 0x73, 0x6b, 0x50, 0x72, 0x65, 0x4e, 0x6f, - 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x10, 0x9d, 0x11, 0x12, 0x16, 0x0a, 0x11, 0x52, 0x74, 0x61, - 0x73, 0x6b, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x4e, 0x6f, 0x52, 0x65, 0x61, 0x63, 0x68, 0x10, 0x9e, - 0x11, 0x12, 0x13, 0x0a, 0x0e, 0x52, 0x74, 0x61, 0x73, 0x6b, 0x4e, 0x6f, 0x4c, 0x61, 0x73, 0x74, - 0x4f, 0x6e, 0x65, 0x10, 0x9f, 0x11, 0x12, 0x16, 0x0a, 0x11, 0x52, 0x74, 0x61, 0x73, 0x6b, 0x43, - 0x6f, 0x6e, 0x64, 0x69, 0x4e, 0x6f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x10, 0xa0, 0x11, 0x12, 0x10, - 0x0a, 0x0b, 0x56, 0x69, 0x6b, 0x69, 0x6e, 0x67, 0x4c, 0x76, 0x45, 0x72, 0x72, 0x10, 0xfd, 0x11, - 0x12, 0x13, 0x0a, 0x0e, 0x56, 0x69, 0x6b, 0x69, 0x6e, 0x67, 0x42, 0x6f, 0x6f, 0x73, 0x54, 0x79, - 0x70, 0x65, 0x10, 0xfe, 0x11, 0x12, 0x16, 0x0a, 0x11, 0x56, 0x69, 0x6b, 0x69, 0x6e, 0x67, 0x42, - 0x75, 0x79, 0x4d, 0x61, 0x78, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xff, 0x11, 0x12, 0x1c, 0x0a, - 0x17, 0x56, 0x69, 0x6b, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x78, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, - 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0x80, 0x12, 0x12, 0x15, 0x0a, 0x10, 0x56, - 0x69, 0x6b, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, 0x67, 0x65, 0x50, 0x73, 0x45, 0x72, 0x72, 0x10, - 0x81, 0x12, 0x12, 0x1a, 0x0a, 0x15, 0x4d, 0x6f, 0x6f, 0x6e, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, - 0x79, 0x48, 0x61, 0x73, 0x45, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x10, 0xe1, 0x12, 0x12, 0x16, - 0x0a, 0x11, 0x4d, 0x6f, 0x6f, 0x6e, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x4a, 0x6f, 0x69, - 0x6e, 0x55, 0x70, 0x10, 0xe2, 0x12, 0x12, 0x16, 0x0a, 0x11, 0x4d, 0x6f, 0x6f, 0x6e, 0x66, 0x61, - 0x6e, 0x74, 0x61, 0x73, 0x79, 0x44, 0x61, 0x72, 0x65, 0x55, 0x70, 0x10, 0xe3, 0x12, 0x12, 0x1b, - 0x0a, 0x16, 0x4d, 0x6f, 0x6f, 0x6e, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x42, 0x61, 0x74, - 0x74, 0x6c, 0x65, 0x4e, 0x6f, 0x45, 0x6e, 0x64, 0x10, 0xe4, 0x12, 0x12, 0x1b, 0x0a, 0x16, 0x4d, - 0x6f, 0x6f, 0x6e, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, - 0x4e, 0x6f, 0x57, 0x69, 0x6e, 0x10, 0xe5, 0x12, 0x12, 0x16, 0x0a, 0x11, 0x4d, 0x6f, 0x6f, 0x6e, - 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x4e, 0x6f, 0x4a, 0x6f, 0x69, 0x6e, 0x10, 0xe6, 0x12, - 0x12, 0x20, 0x0a, 0x1b, 0x4d, 0x6f, 0x6f, 0x6e, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x4e, - 0x6f, 0x74, 0x45, 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x73, 0x10, - 0xe7, 0x12, 0x12, 0x18, 0x0a, 0x13, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x4e, 0x6f, 0x46, 0x6f, - 0x75, 0x6e, 0x64, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x10, 0xc5, 0x13, 0x12, 0x1a, 0x0a, 0x15, - 0x4c, 0x69, 0x6e, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x54, 0x61, 0x73, 0x6b, 0x46, 0x69, 0x6e, - 0x69, 0x73, 0x68, 0x65, 0x64, 0x10, 0xa9, 0x14, 0x12, 0x17, 0x0a, 0x12, 0x4c, 0x69, 0x6e, 0x65, - 0x73, 0x74, 0x6f, 0x72, 0x79, 0x4e, 0x6f, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x10, 0xaa, - 0x14, 0x12, 0x1f, 0x0a, 0x1a, 0x4c, 0x69, 0x6e, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x54, 0x61, - 0x73, 0x6b, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x10, - 0xab, 0x14, 0x12, 0x1b, 0x0a, 0x16, 0x4c, 0x69, 0x6e, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x43, - 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x4e, 0x6f, 0x4f, 0x70, 0x65, 0x6e, 0x10, 0xac, 0x14, 0x12, - 0x1b, 0x0a, 0x16, 0x4c, 0x69, 0x6e, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x50, 0x72, 0x65, 0x4e, - 0x6f, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x10, 0xad, 0x14, 0x12, 0x11, 0x0a, 0x0c, - 0x48, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x4c, 0x76, 0x45, 0x72, 0x72, 0x10, 0x8d, 0x15, 0x12, - 0x14, 0x0a, 0x0f, 0x48, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x42, 0x6f, 0x6f, 0x73, 0x54, 0x79, - 0x70, 0x65, 0x10, 0x8e, 0x15, 0x12, 0x17, 0x0a, 0x12, 0x48, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, - 0x42, 0x75, 0x79, 0x4d, 0x61, 0x78, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0x8f, 0x15, 0x12, 0x1d, - 0x0a, 0x18, 0x48, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x78, 0x43, 0x68, 0x61, 0x6c, - 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0x90, 0x15, 0x12, 0x1c, 0x0a, - 0x17, 0x48, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x4e, 0x6f, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, - 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0x91, 0x15, 0x12, 0x11, 0x0a, 0x0c, 0x45, - 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x74, 0x4c, 0x76, 0x45, 0x72, 0x72, 0x10, 0x97, 0x15, 0x12, 0x14, - 0x0a, 0x0f, 0x45, 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x74, 0x42, 0x6f, 0x6f, 0x73, 0x54, 0x79, 0x70, - 0x65, 0x10, 0x98, 0x15, 0x12, 0x17, 0x0a, 0x12, 0x45, 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x74, 0x42, - 0x75, 0x79, 0x4d, 0x61, 0x78, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0x99, 0x15, 0x12, 0x1d, 0x0a, - 0x18, 0x45, 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x74, 0x4d, 0x61, 0x78, 0x43, 0x68, 0x61, 0x6c, 0x6c, - 0x65, 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0x9a, 0x15, 0x12, 0x1c, 0x0a, 0x17, - 0x45, 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x74, 0x4e, 0x6f, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, - 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0x9b, 0x15, 0x12, 0x11, 0x0a, 0x0c, 0x4c, 0x69, - 0x62, 0x72, 0x61, 0x72, 0x79, 0x4d, 0x61, 0x78, 0x4c, 0x76, 0x10, 0xf1, 0x15, 0x12, 0x12, 0x0a, - 0x0d, 0x4c, 0x69, 0x62, 0x72, 0x61, 0x72, 0x79, 0x4e, 0x6f, 0x44, 0x61, 0x74, 0x61, 0x10, 0xf2, - 0x15, 0x12, 0x16, 0x0a, 0x11, 0x4c, 0x69, 0x62, 0x72, 0x61, 0x72, 0x79, 0x41, 0x63, 0x74, 0x69, - 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xf3, 0x15, 0x12, 0x12, 0x0a, 0x0d, 0x4c, 0x69, 0x62, - 0x72, 0x61, 0x72, 0x79, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0xf4, 0x15, 0x12, 0x14, 0x0a, - 0x0f, 0x4c, 0x69, 0x62, 0x72, 0x61, 0x72, 0x79, 0x4c, 0x76, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, - 0x10, 0xf5, 0x15, 0x12, 0x1d, 0x0a, 0x18, 0x4c, 0x69, 0x62, 0x72, 0x61, 0x72, 0x79, 0x46, 0x65, - 0x74, 0x74, 0x65, 0x72, 0x54, 0x61, 0x73, 0x6b, 0x4e, 0x6f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x10, - 0xf6, 0x15, 0x12, 0x1d, 0x0a, 0x18, 0x4c, 0x69, 0x62, 0x72, 0x61, 0x72, 0x79, 0x50, 0x72, 0x65, - 0x54, 0x61, 0x73, 0x6b, 0x4e, 0x6f, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x10, 0xf7, - 0x15, 0x12, 0x18, 0x0a, 0x13, 0x4c, 0x69, 0x62, 0x72, 0x61, 0x72, 0x79, 0x47, 0x69, 0x76, 0x65, - 0x4d, 0x61, 0x78, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xf8, 0x15, 0x12, 0x1b, 0x0a, 0x16, 0x42, - 0x61, 0x74, 0x74, 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, - 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0xd5, 0x16, 0x12, 0x10, 0x0a, 0x0b, 0x42, 0x61, 0x74, 0x74, - 0x6c, 0x65, 0x4e, 0x6f, 0x57, 0x69, 0x6e, 0x10, 0xd6, 0x16, 0x12, 0x17, 0x0a, 0x12, 0x42, 0x61, - 0x74, 0x74, 0x6c, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, - 0x10, 0xd7, 0x16, 0x12, 0x16, 0x0a, 0x11, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x49, 0x6e, 0x43, - 0x6d, 0x64, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0xd8, 0x16, 0x12, 0x12, 0x0a, 0x0d, 0x42, - 0x61, 0x74, 0x74, 0x6c, 0x65, 0x55, 0x73, 0x65, 0x72, 0x4f, 0x66, 0x66, 0x10, 0xd9, 0x16, 0x12, - 0x1e, 0x0a, 0x19, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x61, 0x70, 0x73, 0x6b, 0x69, 0x6c, - 0x6c, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0xda, 0x16, 0x12, - 0x11, 0x0a, 0x0c, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x4e, 0x6f, 0x4b, 0x65, 0x65, 0x70, 0x10, - 0xdb, 0x16, 0x12, 0x13, 0x0a, 0x0e, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x4e, 0x6f, 0x46, - 0x6f, 0x75, 0x6e, 0x64, 0x10, 0xb8, 0x17, 0x12, 0x11, 0x0a, 0x0c, 0x53, 0x6f, 0x63, 0x69, 0x61, - 0x74, 0x79, 0x41, 0x64, 0x64, 0x65, 0x64, 0x10, 0xb9, 0x17, 0x12, 0x1b, 0x0a, 0x16, 0x53, 0x6f, - 0x63, 0x69, 0x61, 0x74, 0x79, 0x44, 0x69, 0x61, 0x6d, 0x6f, 0x6e, 0x64, 0x4e, 0x6f, 0x45, 0x6e, - 0x6f, 0x75, 0x67, 0x68, 0x10, 0xba, 0x17, 0x12, 0x14, 0x0a, 0x0f, 0x53, 0x6f, 0x63, 0x69, 0x61, - 0x74, 0x79, 0x4e, 0x6f, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x10, 0xbb, 0x17, 0x12, 0x13, 0x0a, - 0x0e, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x4e, 0x6f, 0x52, 0x69, 0x67, 0x68, 0x74, 0x10, - 0xbc, 0x17, 0x12, 0x13, 0x0a, 0x0e, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x4e, 0x6f, 0x41, - 0x64, 0x64, 0x65, 0x64, 0x10, 0xbd, 0x17, 0x12, 0x13, 0x0a, 0x0e, 0x53, 0x6f, 0x63, 0x69, 0x61, - 0x74, 0x79, 0x44, 0x69, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x10, 0xbe, 0x17, 0x12, 0x10, 0x0a, 0x0b, - 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x51, 0x75, 0x69, 0x74, 0x10, 0xbf, 0x17, 0x12, 0x11, - 0x0a, 0x0c, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x41, 0x67, 0x72, 0x65, 0x65, 0x10, 0xc0, - 0x17, 0x12, 0x12, 0x0a, 0x0d, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x52, 0x65, 0x66, 0x75, - 0x73, 0x65, 0x10, 0xc1, 0x17, 0x12, 0x15, 0x0a, 0x10, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, - 0x4c, 0x6f, 0x67, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x10, 0xc2, 0x17, 0x12, 0x18, 0x0a, 0x13, - 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x4e, 0x6f, 0x44, - 0x69, 0x73, 0x73, 0x10, 0xc3, 0x17, 0x12, 0x16, 0x0a, 0x11, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, - 0x79, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x4a, 0x6f, 0x62, 0x10, 0xc4, 0x17, 0x12, 0x13, - 0x0a, 0x0e, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, - 0x10, 0xc5, 0x17, 0x12, 0x14, 0x0a, 0x0f, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x4e, 0x6f, - 0x41, 0x63, 0x63, 0x75, 0x73, 0x65, 0x10, 0xc6, 0x17, 0x12, 0x10, 0x0a, 0x0b, 0x53, 0x6f, 0x63, - 0x69, 0x61, 0x74, 0x79, 0x53, 0x69, 0x67, 0x6e, 0x10, 0xc7, 0x17, 0x12, 0x12, 0x0a, 0x0d, 0x53, - 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x53, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x10, 0xc8, 0x17, 0x12, - 0x13, 0x0a, 0x0e, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x43, 0x44, 0x4c, 0x69, 0x6d, 0x69, - 0x74, 0x10, 0xc9, 0x17, 0x12, 0x14, 0x0a, 0x0f, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x41, - 0x70, 0x70, 0x6c, 0x79, 0x4d, 0x61, 0x78, 0x10, 0xca, 0x17, 0x12, 0x17, 0x0a, 0x12, 0x53, 0x6f, - 0x63, 0x69, 0x61, 0x74, 0x79, 0x53, 0x65, 0x6c, 0x66, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, - 0x10, 0xcb, 0x17, 0x12, 0x1c, 0x0a, 0x17, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x4d, 0x65, - 0x6d, 0x62, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x10, 0xcc, - 0x17, 0x12, 0x1a, 0x0a, 0x15, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x52, 0x65, 0x77, 0x61, - 0x72, 0x64, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x10, 0xcd, 0x17, 0x12, 0x19, 0x0a, - 0x14, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x52, 0x65, - 0x63, 0x65, 0x69, 0x76, 0x65, 0x10, 0xce, 0x17, 0x12, 0x14, 0x0a, 0x0f, 0x53, 0x6f, 0x63, 0x69, - 0x61, 0x74, 0x79, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x10, 0xcf, 0x17, 0x12, 0x14, - 0x0a, 0x0f, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x42, 0x65, 0x6c, 0x6f, 0x6e, 0x67, 0x54, - 0x6f, 0x10, 0xd1, 0x17, 0x12, 0x13, 0x0a, 0x0e, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x41, - 0x70, 0x70, 0x6c, 0x69, 0x65, 0x64, 0x10, 0xd2, 0x17, 0x12, 0x1a, 0x0a, 0x15, 0x53, 0x6f, 0x63, - 0x69, 0x61, 0x74, 0x79, 0x41, 0x70, 0x70, 0x79, 0x4c, 0x76, 0x4e, 0x6f, 0x45, 0x6e, 0x6f, 0x75, - 0x67, 0x68, 0x10, 0xd3, 0x17, 0x12, 0x1a, 0x0a, 0x15, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, - 0x54, 0x61, 0x73, 0x6b, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xd4, - 0x17, 0x12, 0x1c, 0x0a, 0x17, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x41, 0x63, 0x74, 0x69, - 0x76, 0x69, 0x74, 0x79, 0x4e, 0x6f, 0x45, 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x10, 0xd5, 0x17, 0x12, - 0x1b, 0x0a, 0x16, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x41, 0x63, 0x69, 0x74, 0x76, 0x69, - 0x74, 0x79, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x10, 0xd6, 0x17, 0x12, 0x15, 0x0a, 0x10, - 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x44, 0x69, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x65, 0x64, - 0x10, 0xd7, 0x17, 0x12, 0x15, 0x0a, 0x10, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x4e, 0x61, - 0x6d, 0x65, 0x45, 0x78, 0x69, 0x73, 0x74, 0x10, 0xd8, 0x17, 0x12, 0x19, 0x0a, 0x14, 0x53, 0x6f, - 0x63, 0x69, 0x61, 0x74, 0x79, 0x51, 0x75, 0x69, 0x74, 0x4e, 0x6f, 0x41, 0x6c, 0x6c, 0x6f, 0x77, - 0x65, 0x64, 0x10, 0xd9, 0x17, 0x12, 0x14, 0x0a, 0x0f, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, - 0x4e, 0x6f, 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x10, 0xda, 0x17, 0x12, 0x17, 0x0a, 0x12, 0x53, - 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x4e, 0x6f, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x10, 0xdb, 0x17, 0x12, 0x1b, 0x0a, 0x16, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x54, - 0x69, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x4e, 0x6f, 0x45, 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x10, 0xdc, - 0x17, 0x12, 0x18, 0x0a, 0x13, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x53, 0x70, 0x6f, 0x72, - 0x74, 0x73, 0x4e, 0x6f, 0x69, 0x6e, 0x69, 0x74, 0x10, 0xdd, 0x17, 0x12, 0x15, 0x0a, 0x10, 0x53, - 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x53, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x45, 0x6e, 0x64, 0x10, - 0xde, 0x17, 0x12, 0x16, 0x0a, 0x11, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x54, 0x65, 0x61, - 0x6d, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x10, 0xdf, 0x17, 0x12, 0x17, 0x0a, 0x12, 0x53, 0x6f, - 0x63, 0x69, 0x61, 0x74, 0x79, 0x54, 0x61, 0x73, 0x6b, 0x4e, 0x6f, 0x46, 0x6f, 0x75, 0x6e, 0x64, - 0x10, 0xe0, 0x17, 0x12, 0x1a, 0x0a, 0x15, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x54, 0x61, - 0x73, 0x6b, 0x4e, 0x6f, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x10, 0xe1, 0x17, 0x12, - 0x18, 0x0a, 0x13, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, - 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x10, 0xe2, 0x17, 0x12, 0x18, 0x0a, 0x13, 0x53, 0x6f, 0x63, - 0x69, 0x61, 0x74, 0x79, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x4c, 0x76, 0x4c, 0x69, 0x6d, 0x69, 0x74, - 0x10, 0xe3, 0x17, 0x12, 0x17, 0x0a, 0x12, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x41, 0x70, - 0x70, 0x6c, 0x79, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x10, 0xe4, 0x17, 0x12, 0x19, 0x0a, 0x14, - 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x4e, 0x6f, 0x74, 0x69, 0x63, 0x65, 0x54, 0x65, 0x78, - 0x74, 0x4c, 0x65, 0x6e, 0x10, 0xe5, 0x17, 0x12, 0x20, 0x0a, 0x1b, 0x53, 0x6f, 0x63, 0x69, 0x61, - 0x74, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, - 0x6e, 0x57, 0x6f, 0x72, 0x64, 0x73, 0x10, 0xe6, 0x17, 0x12, 0x22, 0x0a, 0x1d, 0x53, 0x6f, 0x63, - 0x69, 0x61, 0x74, 0x79, 0x4e, 0x6f, 0x74, 0x69, 0x63, 0x65, 0x49, 0x6e, 0x73, 0x63, 0x72, 0x69, - 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x57, 0x6f, 0x72, 0x64, 0x73, 0x10, 0xe7, 0x17, 0x12, 0x15, 0x0a, - 0x10, 0x41, 0x72, 0x65, 0x6e, 0x61, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x42, 0x75, 0x79, 0x55, - 0x70, 0x10, 0x9d, 0x18, 0x12, 0x19, 0x0a, 0x14, 0x41, 0x72, 0x65, 0x6e, 0x61, 0x54, 0x69, 0x63, - 0x6b, 0x65, 0x74, 0x4e, 0x6f, 0x74, 0x45, 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x10, 0x9e, 0x18, 0x12, - 0x17, 0x0a, 0x12, 0x41, 0x72, 0x65, 0x6e, 0x61, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x4e, 0x70, - 0x63, 0x49, 0x6e, 0x43, 0x64, 0x10, 0x9f, 0x18, 0x12, 0x16, 0x0a, 0x11, 0x54, 0x61, 0x6c, 0x65, - 0x6e, 0x74, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x10, 0x81, 0x19, - 0x12, 0x12, 0x0a, 0x0d, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x45, 0x72, 0x72, 0x44, 0x61, 0x74, - 0x61, 0x10, 0x82, 0x19, 0x12, 0x19, 0x0a, 0x14, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x55, 0x6e, - 0x4c, 0x6f, 0x63, 0x6b, 0x65, 0x72, 0x42, 0x65, 0x66, 0x6f, 0x72, 0x65, 0x10, 0x83, 0x19, 0x12, - 0x15, 0x0a, 0x10, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x65, 0x74, 0x53, 0x74, - 0x61, 0x74, 0x65, 0x10, 0x84, 0x19, 0x12, 0x10, 0x0a, 0x0b, 0x54, 0x72, 0x6f, 0x6c, 0x6c, 0x42, - 0x75, 0x79, 0x4d, 0x61, 0x78, 0x10, 0xe5, 0x19, 0x12, 0x11, 0x0a, 0x0c, 0x54, 0x72, 0x6f, 0x6c, - 0x6c, 0x53, 0x65, 0x6c, 0x6c, 0x4d, 0x61, 0x78, 0x10, 0xe6, 0x19, 0x12, 0x16, 0x0a, 0x11, 0x54, - 0x72, 0x6f, 0x6c, 0x6c, 0x4d, 0x61, 0x78, 0x53, 0x65, 0x6c, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, - 0x10, 0xe7, 0x19, 0x12, 0x16, 0x0a, 0x11, 0x54, 0x72, 0x6f, 0x6c, 0x6c, 0x4d, 0x61, 0x78, 0x49, - 0x74, 0x65, 0x6d, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xe8, 0x19, 0x12, 0x18, 0x0a, 0x13, 0x54, - 0x72, 0x6f, 0x6c, 0x6c, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x52, 0x65, 0x77, 0x61, - 0x72, 0x64, 0x10, 0xe9, 0x19, 0x12, 0x0e, 0x0a, 0x09, 0x54, 0x72, 0x6f, 0x6c, 0x6c, 0x43, 0x69, - 0x74, 0x79, 0x10, 0xea, 0x19, 0x12, 0x0e, 0x0a, 0x09, 0x54, 0x72, 0x6f, 0x6c, 0x6c, 0x54, 0x61, - 0x73, 0x6b, 0x10, 0xeb, 0x19, 0x12, 0x16, 0x0a, 0x11, 0x54, 0x72, 0x6f, 0x6c, 0x6c, 0x49, 0x74, - 0x65, 0x6d, 0x4e, 0x6f, 0x45, 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x10, 0xec, 0x19, 0x12, 0x18, 0x0a, - 0x13, 0x54, 0x72, 0x6f, 0x6c, 0x6c, 0x43, 0x69, 0x74, 0x79, 0x55, 0x6e, 0x53, 0x65, 0x6c, 0x6c, - 0x49, 0x74, 0x65, 0x6d, 0x10, 0xed, 0x19, 0x12, 0x18, 0x0a, 0x13, 0x54, 0x72, 0x6f, 0x6c, 0x6c, - 0x43, 0x69, 0x74, 0x79, 0x55, 0x6e, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x10, 0xee, - 0x19, 0x12, 0x14, 0x0a, 0x0f, 0x54, 0x72, 0x6f, 0x6c, 0x6c, 0x43, 0x61, 0x6e, 0x74, 0x52, 0x65, - 0x77, 0x61, 0x72, 0x64, 0x10, 0xef, 0x19, 0x12, 0x19, 0x0a, 0x14, 0x48, 0x6f, 0x72, 0x6f, 0x73, - 0x63, 0x6f, 0x70, 0x65, 0x4e, 0x6f, 0x74, 0x54, 0x75, 0x72, 0x6e, 0x65, 0x64, 0x4f, 0x6e, 0x10, - 0xc9, 0x1a, 0x12, 0x19, 0x0a, 0x14, 0x48, 0x6f, 0x72, 0x6f, 0x73, 0x63, 0x6f, 0x70, 0x65, 0x52, - 0x65, 0x73, 0x74, 0x43, 0x44, 0x4e, 0x6f, 0x45, 0x6e, 0x64, 0x10, 0xca, 0x1a, 0x12, 0x16, 0x0a, - 0x11, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x4e, 0x6f, 0x74, 0x46, 0x6f, 0x75, - 0x6e, 0x64, 0x10, 0xad, 0x1b, 0x12, 0x17, 0x0a, 0x12, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, - 0x67, 0x65, 0x52, 0x65, 0x6e, 0x65, 0x77, 0x54, 0x69, 0x6d, 0x65, 0x10, 0xae, 0x1b, 0x12, 0x0f, - 0x0a, 0x0a, 0x56, 0x69, 0x70, 0x4c, 0x76, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0xaf, 0x1b, 0x12, - 0x11, 0x0a, 0x0c, 0x56, 0x69, 0x70, 0x47, 0x69, 0x66, 0x74, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, - 0xb0, 0x1b, 0x12, 0x11, 0x0a, 0x0c, 0x56, 0x69, 0x70, 0x42, 0x75, 0x79, 0x52, 0x65, 0x70, 0x65, - 0x61, 0x74, 0x10, 0xb1, 0x1b, 0x12, 0x14, 0x0a, 0x0f, 0x47, 0x72, 0x6f, 0x77, 0x74, 0x61, 0x73, - 0x6b, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x10, 0x91, 0x1c, 0x12, 0x17, 0x0a, 0x12, 0x47, - 0x72, 0x6f, 0x77, 0x74, 0x61, 0x73, 0x6b, 0x41, 0x64, 0x76, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, - 0x65, 0x10, 0x92, 0x1c, 0x12, 0x17, 0x0a, 0x12, 0x50, 0x61, 0x79, 0x42, 0x75, 0x79, 0x4e, 0x75, - 0x6d, 0x4e, 0x6f, 0x74, 0x45, 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x10, 0xf5, 0x1c, 0x12, 0x14, 0x0a, - 0x0f, 0x50, 0x61, 0x79, 0x52, 0x65, 0x6e, 0x65, 0x77, 0x54, 0x69, 0x6d, 0x65, 0x45, 0x72, 0x72, - 0x10, 0xf6, 0x1c, 0x12, 0x16, 0x0a, 0x11, 0x50, 0x61, 0x79, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x43, - 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x10, 0xf7, 0x1c, 0x12, 0x14, 0x0a, 0x0f, 0x57, - 0x6f, 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x10, 0xd9, - 0x1d, 0x12, 0x19, 0x0a, 0x14, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x4c, 0x76, - 0x4e, 0x6f, 0x74, 0x45, 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x10, 0xda, 0x1d, 0x12, 0x16, 0x0a, 0x11, - 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x4e, 0x6f, 0x41, 0x63, 0x63, 0x65, 0x70, - 0x74, 0x10, 0xdb, 0x1d, 0x12, 0x18, 0x0a, 0x13, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, - 0x6b, 0x4e, 0x6f, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x10, 0xdc, 0x1d, 0x12, 0x15, - 0x0a, 0x10, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x46, 0x69, 0x6e, 0x69, 0x68, - 0x65, 0x64, 0x10, 0xdd, 0x1d, 0x12, 0x1c, 0x0a, 0x17, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x74, 0x61, - 0x73, 0x6b, 0x4c, 0x61, 0x73, 0x74, 0x55, 0x6e, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, - 0x10, 0xde, 0x1d, 0x12, 0x1b, 0x0a, 0x16, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, - 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x4e, 0x6f, 0x73, 0x61, 0x6d, 0x65, 0x10, 0xdf, 0x1d, - 0x12, 0x1f, 0x0a, 0x1a, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x43, 0x68, 0x61, - 0x70, 0x74, 0x65, 0x72, 0x55, 0x6e, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x10, 0xe0, - 0x1d, 0x12, 0x1d, 0x0a, 0x18, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x43, 0x68, - 0x61, 0x70, 0x74, 0x65, 0x72, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x10, 0xe1, 0x1d, - 0x12, 0x17, 0x0a, 0x12, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x4e, 0x6f, 0x50, - 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x10, 0xe2, 0x1d, 0x12, 0x1a, 0x0a, 0x15, 0x57, 0x6f, 0x72, - 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x10, 0xe3, 0x1d, 0x12, 0x1e, 0x0a, 0x19, 0x41, 0x63, 0x61, 0x64, 0x65, 0x6d, 0x79, - 0x54, 0x61, 0x73, 0x6b, 0x4e, 0x6f, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x61, - 0x73, 0x6b, 0x10, 0xbd, 0x1e, 0x12, 0x15, 0x0a, 0x10, 0x41, 0x75, 0x74, 0x6f, 0x42, 0x61, 0x74, - 0x74, 0x6c, 0x65, 0x4e, 0x6f, 0x44, 0x61, 0x74, 0x61, 0x10, 0xa1, 0x1f, 0x12, 0x18, 0x0a, 0x13, - 0x41, 0x75, 0x74, 0x6f, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x73, - 0x45, 0x72, 0x72, 0x10, 0xa2, 0x1f, 0x12, 0x11, 0x0a, 0x0c, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, - 0x4e, 0x6f, 0x52, 0x65, 0x65, 0x6c, 0x10, 0x85, 0x20, 0x12, 0x18, 0x0a, 0x13, 0x53, 0x6d, 0x69, - 0x74, 0x68, 0x79, 0x4e, 0x6f, 0x54, 0x65, 0x6d, 0x70, 0x65, 0x72, 0x61, 0x74, 0x75, 0x72, 0x65, - 0x10, 0x86, 0x20, 0x12, 0x15, 0x0a, 0x10, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x53, 0x74, 0x6f, - 0x76, 0x65, 0x4d, 0x61, 0x78, 0x4c, 0x76, 0x10, 0x87, 0x20, 0x12, 0x18, 0x0a, 0x13, 0x53, 0x6d, - 0x69, 0x74, 0x68, 0x79, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x4c, 0x69, 0x6d, 0x69, - 0x74, 0x10, 0x88, 0x20, 0x12, 0x20, 0x0a, 0x1b, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x43, 0x75, - 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x45, 0x71, 0x75, 0x69, 0x70, 0x4e, 0x6f, 0x45, 0x6e, 0x6f, - 0x75, 0x67, 0x68, 0x10, 0x89, 0x20, 0x12, 0x19, 0x0a, 0x14, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, - 0x4d, 0x61, 0x78, 0x54, 0x65, 0x6d, 0x70, 0x65, 0x72, 0x61, 0x74, 0x75, 0x72, 0x65, 0x10, 0x8a, - 0x20, 0x12, 0x13, 0x0a, 0x0e, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x4c, 0x61, 0x63, 0x6b, 0x4c, - 0x61, 0x76, 0x61, 0x10, 0x8b, 0x20, 0x12, 0x15, 0x0a, 0x10, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, - 0x41, 0x74, 0x6c, 0x61, 0x73, 0x4d, 0x61, 0x78, 0x4c, 0x76, 0x10, 0x8c, 0x20, 0x12, 0x16, 0x0a, - 0x11, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x41, 0x74, 0x6c, 0x61, 0x73, 0x4c, 0x61, 0x63, 0x6b, - 0x4c, 0x76, 0x10, 0x8d, 0x20, 0x12, 0x19, 0x0a, 0x14, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x54, - 0x61, 0x73, 0x6b, 0x4e, 0x6f, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x10, 0x8e, 0x20, - 0x12, 0x17, 0x0a, 0x12, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, - 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x10, 0x8f, 0x20, 0x12, 0x17, 0x0a, 0x12, 0x53, 0x6d, 0x69, - 0x74, 0x68, 0x79, 0x4e, 0x6f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x41, 0x74, 0x6c, 0x61, 0x73, 0x10, - 0x90, 0x20, 0x12, 0x1a, 0x0a, 0x15, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x4e, 0x6f, 0x41, 0x63, - 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x41, 0x74, 0x6c, 0x61, 0x73, 0x10, 0x91, 0x20, 0x12, 0x18, - 0x0a, 0x13, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x4c, 0x76, 0x54, 0x6f, 0x6f, 0x6c, 0x73, 0x46, - 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0x92, 0x20, 0x12, 0x15, 0x0a, 0x10, 0x53, 0x6d, 0x69, 0x74, - 0x68, 0x79, 0x4c, 0x76, 0x54, 0x6f, 0x6f, 0x6c, 0x73, 0x50, 0x72, 0x65, 0x10, 0x93, 0x20, 0x12, - 0x17, 0x0a, 0x12, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x41, 0x74, 0x6c, 0x61, 0x73, 0x54, 0x79, - 0x70, 0x65, 0x45, 0x72, 0x72, 0x10, 0x94, 0x20, 0x12, 0x1a, 0x0a, 0x15, 0x44, 0x69, 0x73, 0x70, - 0x61, 0x74, 0x63, 0x68, 0x48, 0x65, 0x72, 0x6f, 0x4e, 0x6f, 0x52, 0x65, 0x61, 0x63, 0x68, 0x65, - 0x64, 0x10, 0xe9, 0x20, 0x12, 0x13, 0x0a, 0x0e, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, - 0x4e, 0x6f, 0x46, 0x72, 0x65, 0x65, 0x10, 0xea, 0x20, 0x12, 0x1b, 0x0a, 0x16, 0x44, 0x69, 0x73, - 0x70, 0x61, 0x74, 0x63, 0x68, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x4e, 0x6f, 0x45, 0x6e, 0x6f, - 0x75, 0x67, 0x68, 0x10, 0xeb, 0x20, 0x12, 0x19, 0x0a, 0x14, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, - 0x63, 0x68, 0x48, 0x65, 0x72, 0x6f, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x10, 0xec, - 0x20, 0x12, 0x18, 0x0a, 0x13, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x54, 0x61, 0x73, - 0x6b, 0x45, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x10, 0xed, 0x20, 0x12, 0x17, 0x0a, 0x12, 0x44, - 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x4d, 0x61, - 0x78, 0x10, 0xee, 0x20, 0x12, 0x17, 0x0a, 0x12, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, - 0x4e, 0x6f, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x10, 0xef, 0x20, 0x12, 0x19, 0x0a, - 0x14, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x48, 0x65, 0x72, 0x6f, 0x4e, 0x6f, 0x45, - 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x10, 0xf0, 0x20, 0x12, 0x16, 0x0a, 0x11, 0x50, 0x72, 0x61, 0x63, - 0x74, 0x69, 0x63, 0x65, 0x51, 0x69, 0x65, 0x63, 0x75, 0x6f, 0x69, 0x6e, 0x67, 0x10, 0xcd, 0x21, - 0x12, 0x11, 0x0a, 0x0c, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x53, 0x65, 0x6e, 0x74, - 0x10, 0xce, 0x21, 0x12, 0x1a, 0x0a, 0x15, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x49, - 0x6e, 0x76, 0x69, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x4f, 0x75, 0x74, 0x10, 0xcf, 0x21, 0x12, - 0x18, 0x0a, 0x13, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x50, 0x69, 0x6c, 0x6c, 0x61, - 0x72, 0x4d, 0x61, 0x78, 0x4c, 0x76, 0x10, 0xd0, 0x21, 0x12, 0x19, 0x0a, 0x14, 0x50, 0x72, 0x61, - 0x63, 0x74, 0x69, 0x63, 0x65, 0x59, 0x6f, 0x75, 0x51, 0x69, 0x65, 0x63, 0x75, 0x6f, 0x69, 0x6e, - 0x67, 0x10, 0xd1, 0x21, 0x12, 0x1c, 0x0a, 0x17, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, - 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x51, 0x69, 0x65, 0x63, 0x75, 0x6f, 0x69, 0x6e, 0x67, 0x10, - 0xd2, 0x21, 0x12, 0x15, 0x0a, 0x10, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x55, 0x73, - 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x10, 0xd3, 0x21, 0x12, 0x16, 0x0a, 0x11, 0x50, 0x61, 0x72, - 0x6b, 0x6f, 0x75, 0x72, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x46, 0x75, 0x6c, 0x6c, 0x10, 0xb1, - 0x22, 0x12, 0x19, 0x0a, 0x14, 0x50, 0x61, 0x72, 0x6b, 0x6f, 0x75, 0x72, 0x49, 0x6e, 0x76, 0x69, - 0x74, 0x65, 0x4f, 0x76, 0x65, 0x72, 0x64, 0x75, 0x65, 0x10, 0xb2, 0x22, 0x12, 0x1f, 0x0a, 0x1a, - 0x50, 0x61, 0x72, 0x6b, 0x6f, 0x75, 0x72, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x4e, 0x6f, 0x50, - 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x10, 0xb3, 0x22, 0x12, 0x18, 0x0a, - 0x13, 0x50, 0x61, 0x72, 0x6b, 0x6f, 0x75, 0x72, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x54, 0x65, - 0x61, 0x6d, 0x65, 0x64, 0x10, 0xb4, 0x22, 0x12, 0x15, 0x0a, 0x10, 0x44, 0x72, 0x61, 0x67, 0x6f, - 0x6e, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x43, 0x64, 0x69, 0x6e, 0x67, 0x10, 0xb5, 0x22, 0x12, 0x18, - 0x0a, 0x13, 0x44, 0x72, 0x61, 0x67, 0x6f, 0x6e, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x4d, 0x61, 0x78, - 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xb6, 0x22, 0x12, 0x1a, 0x0a, 0x15, 0x44, 0x72, 0x61, 0x67, - 0x6f, 0x6e, 0x4e, 0x6f, 0x74, 0x41, 0x64, 0x75, 0x6c, 0x74, 0x44, 0x64, 0x72, 0x61, 0x67, 0x6f, - 0x6e, 0x10, 0xb7, 0x22, 0x12, 0x14, 0x0a, 0x0f, 0x44, 0x72, 0x61, 0x67, 0x6f, 0x6e, 0x4d, 0x61, - 0x78, 0x4c, 0x76, 0x49, 0x74, 0x65, 0x6d, 0x10, 0xb8, 0x22, 0x12, 0x19, 0x0a, 0x14, 0x52, 0x65, - 0x70, 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x46, 0x75, - 0x6c, 0x6c, 0x10, 0x95, 0x23, 0x12, 0x1a, 0x0a, 0x15, 0x52, 0x65, 0x70, 0x75, 0x74, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x4e, 0x6f, 0x50, 0x72, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x4c, 0x76, 0x10, 0x96, - 0x23, 0x12, 0x15, 0x0a, 0x10, 0x4f, 0x6c, 0x64, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x52, 0x65, 0x63, - 0x65, 0x69, 0x76, 0x65, 0x64, 0x10, 0xf9, 0x23, 0x12, 0x15, 0x0a, 0x10, 0x4f, 0x6c, 0x64, 0x74, - 0x69, 0x6d, 0x65, 0x73, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x10, 0xfa, 0x23, 0x12, - 0x16, 0x0a, 0x11, 0x4f, 0x6c, 0x64, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x4c, 0x65, 0x76, 0x65, 0x6c, - 0x4f, 0x76, 0x65, 0x72, 0x10, 0xfb, 0x23, 0x12, 0x1f, 0x0a, 0x1a, 0x4f, 0x6c, 0x64, 0x74, 0x69, - 0x6d, 0x65, 0x73, 0x50, 0x72, 0x65, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x4e, 0x6f, 0x46, 0x69, 0x6e, - 0x69, 0x73, 0x68, 0x65, 0x64, 0x10, 0xfc, 0x23, 0x12, 0x1a, 0x0a, 0x15, 0x4f, 0x6c, 0x64, 0x74, - 0x69, 0x6d, 0x65, 0x73, 0x4e, 0x6f, 0x41, 0x6c, 0x6c, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, - 0x64, 0x10, 0xfd, 0x23, 0x12, 0x1b, 0x0a, 0x16, 0x50, 0x61, 0x73, 0x73, 0x6f, 0x6e, 0x48, 0x65, - 0x72, 0x6f, 0x4e, 0x75, 0x6d, 0x4e, 0x6f, 0x74, 0x45, 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x10, 0xdd, - 0x24, 0x12, 0x1a, 0x0a, 0x15, 0x50, 0x61, 0x73, 0x73, 0x6f, 0x6e, 0x48, 0x65, 0x72, 0x6f, 0x55, - 0x6e, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x10, 0xde, 0x24, 0x12, 0x17, 0x0a, - 0x12, 0x50, 0x61, 0x73, 0x73, 0x6f, 0x6e, 0x53, 0x65, 0x61, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, - 0x45, 0x72, 0x72, 0x10, 0xdf, 0x24, 0x12, 0x13, 0x0a, 0x0e, 0x57, 0x61, 0x72, 0x6f, 0x72, 0x64, - 0x65, 0x72, 0x4e, 0x6f, 0x4f, 0x70, 0x65, 0x6e, 0x10, 0xc1, 0x25, 0x12, 0x21, 0x0a, 0x1c, 0x53, - 0x74, 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, - 0x64, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x10, 0xa5, 0x26, 0x12, 0x21, - 0x0a, 0x1c, 0x53, 0x74, 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x70, 0x65, - 0x61, 0x74, 0x65, 0x64, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x42, 0x55, 0x66, 0x66, 0x10, 0xa6, - 0x26, 0x12, 0x18, 0x0a, 0x13, 0x53, 0x74, 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65, 0x50, - 0x6f, 0x72, 0x74, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x10, 0xa7, 0x26, 0x12, 0x1e, 0x0a, 0x19, 0x53, - 0x74, 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x52, 0x6f, - 0x6f, 0x6d, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0xa8, 0x26, 0x12, 0x1d, 0x0a, 0x18, 0x53, - 0x74, 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, - 0x64, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0xa9, 0x26, 0x12, 0x1d, 0x0a, 0x18, 0x53, 0x74, - 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65, 0x47, 0x6f, 0x74, 0x6f, 0x52, 0x6f, 0x6f, 0x6d, - 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0xaa, 0x26, 0x12, 0x1e, 0x0a, 0x19, 0x53, 0x74, 0x6f, - 0x6e, 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x42, 0x6f, 0x78, - 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0xab, 0x26, 0x12, 0x19, 0x0a, 0x14, 0x53, 0x74, 0x6f, - 0x6e, 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65, 0x4e, 0x6f, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, - 0x65, 0x10, 0xac, 0x26, 0x12, 0x17, 0x0a, 0x12, 0x53, 0x74, 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e, - 0x67, 0x65, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x4d, 0x61, 0x78, 0x10, 0xad, 0x26, 0x12, 0x16, 0x0a, - 0x11, 0x53, 0x74, 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65, 0x43, 0x61, 0x6e, 0x74, 0x42, - 0x75, 0x79, 0x10, 0xae, 0x26, 0x12, 0x1b, 0x0a, 0x16, 0x53, 0x74, 0x6f, 0x6e, 0x65, 0x68, 0x65, - 0x6e, 0x67, 0x65, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x10, - 0xaf, 0x26, 0x12, 0x1b, 0x0a, 0x16, 0x53, 0x74, 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65, - 0x62, 0x75, 0x66, 0x66, 0x52, 0x65, 0x73, 0x65, 0x74, 0x45, 0x72, 0x72, 0x10, 0xb0, 0x26, 0x12, - 0x11, 0x0a, 0x0c, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x4f, 0x76, 0x65, 0x72, 0x10, - 0x89, 0x27, 0x12, 0x15, 0x0a, 0x10, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x55, 0x6e, - 0x4f, 0x70, 0x65, 0x6e, 0x65, 0x64, 0x10, 0x8a, 0x27, 0x12, 0x18, 0x0a, 0x13, 0x41, 0x63, 0x74, - 0x69, 0x76, 0x69, 0x74, 0x79, 0x52, 0x65, 0x70, 0x61, 0x74, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, - 0x10, 0x8b, 0x27, 0x12, 0x16, 0x0a, 0x11, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x4e, - 0x6f, 0x74, 0x49, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x10, 0x8c, 0x27, 0x12, 0x14, 0x0a, 0x0f, 0x41, - 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, 0x8d, - 0x27, 0x12, 0x17, 0x0a, 0x12, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x43, 0x61, 0x6e, - 0x74, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0x8e, 0x27, 0x12, 0x1c, 0x0a, 0x17, 0x43, 0x61, - 0x70, 0x74, 0x75, 0x72, 0x65, 0x73, 0x68, 0x65, 0x65, 0x70, 0x52, 0x61, 0x6e, 0x6b, 0x43, 0x6c, - 0x6f, 0x73, 0x65, 0x65, 0x64, 0x10, 0xed, 0x27, 0x12, 0x16, 0x0a, 0x11, 0x45, 0x6e, 0x74, 0x65, - 0x72, 0x74, 0x61, 0x69, 0x6e, 0x43, 0x61, 0x6e, 0x74, 0x53, 0x77, 0x61, 0x70, 0x10, 0xd1, 0x28, - 0x12, 0x15, 0x0a, 0x10, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x4e, 0x6f, 0x50, - 0x6f, 0x77, 0x65, 0x72, 0x10, 0xd2, 0x28, 0x12, 0x19, 0x0a, 0x14, 0x45, 0x6e, 0x74, 0x65, 0x72, - 0x74, 0x61, 0x69, 0x6e, 0x4e, 0x6f, 0x48, 0x65, 0x72, 0x6f, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x10, - 0xd3, 0x28, 0x12, 0x16, 0x0a, 0x11, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x4e, - 0x6f, 0x45, 0x6e, 0x65, 0x72, 0x67, 0x79, 0x10, 0xd4, 0x28, 0x12, 0x1a, 0x0a, 0x15, 0x45, 0x6e, - 0x74, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x61, 0x69, - 0x6c, 0x65, 0x64, 0x10, 0xd5, 0x28, 0x12, 0x1b, 0x0a, 0x16, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, - 0x61, 0x69, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x6f, 0x52, 0x65, 0x61, 0x64, 0x79, - 0x10, 0xd6, 0x28, 0x12, 0x17, 0x0a, 0x12, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, - 0x4e, 0x6f, 0x74, 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x10, 0xd7, 0x28, 0x12, 0x1c, 0x0a, 0x17, - 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x44, 0x69, 0x73, 0x73, 0x6f, 0x6c, 0x76, - 0x65, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0xd8, 0x28, 0x12, 0x18, 0x0a, 0x13, 0x45, 0x6e, - 0x74, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x42, 0x6f, 0x78, 0x45, 0x6e, 0x64, 0x54, 0x69, 0x6d, - 0x65, 0x10, 0xd9, 0x28, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x33, + 0x4e, 0x6f, 0x74, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x10, 0xcb, 0x0c, 0x12, 0x17, 0x0a, 0x12, 0x54, + 0x61, 0x73, 0x6b, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x52, 0x65, 0x77, 0x61, 0x72, + 0x64, 0x10, 0xcc, 0x0c, 0x12, 0x17, 0x0a, 0x12, 0x53, 0x68, 0x6f, 0x70, 0x47, 0x6f, 0x6f, 0x64, + 0x73, 0x49, 0x73, 0x53, 0x6f, 0x6c, 0x64, 0x4f, 0x75, 0x74, 0x10, 0xa4, 0x0d, 0x12, 0x1c, 0x0a, + 0x17, 0x53, 0x68, 0x6f, 0x70, 0x4e, 0x6f, 0x53, 0x75, 0x72, 0x70, 0x6c, 0x75, 0x73, 0x52, 0x65, + 0x66, 0x72, 0x65, 0x73, 0x68, 0x4e, 0x75, 0x6d, 0x10, 0xa5, 0x0d, 0x12, 0x0c, 0x0a, 0x07, 0x4d, + 0x61, 0x69, 0x6c, 0x45, 0x72, 0x72, 0x10, 0x88, 0x0e, 0x12, 0x13, 0x0a, 0x0e, 0x50, 0x61, 0x67, + 0x6f, 0x64, 0x61, 0x4e, 0x6f, 0x74, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x10, 0xec, 0x0e, 0x12, 0x12, + 0x0a, 0x0d, 0x50, 0x61, 0x67, 0x6f, 0x64, 0x61, 0x4c, 0x65, 0x76, 0x6c, 0x45, 0x72, 0x72, 0x10, + 0xed, 0x0e, 0x12, 0x17, 0x0a, 0x12, 0x50, 0x61, 0x67, 0x6f, 0x64, 0x61, 0x47, 0x65, 0x74, 0x52, + 0x65, 0x77, 0x61, 0x72, 0x64, 0x45, 0x72, 0x72, 0x10, 0xee, 0x0e, 0x12, 0x17, 0x0a, 0x12, 0x50, + 0x61, 0x67, 0x6f, 0x64, 0x61, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x72, + 0x72, 0x10, 0xef, 0x0e, 0x12, 0x11, 0x0a, 0x0c, 0x50, 0x61, 0x67, 0x6f, 0x64, 0x61, 0x55, 0x6e, + 0x6c, 0x6f, 0x63, 0x6b, 0x10, 0xf0, 0x0e, 0x12, 0x14, 0x0a, 0x0f, 0x50, 0x61, 0x67, 0x6f, 0x64, + 0x61, 0x54, 0x69, 0x6d, 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0xf1, 0x0e, 0x12, 0x13, 0x0a, + 0x0e, 0x50, 0x61, 0x67, 0x6f, 0x64, 0x61, 0x4d, 0x61, 0x78, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, + 0xf2, 0x0e, 0x12, 0x1b, 0x0a, 0x16, 0x4d, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x68, 0x61, 0x6c, + 0x6c, 0x4e, 0x6f, 0x74, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x10, 0xd0, 0x0f, 0x12, + 0x15, 0x0a, 0x10, 0x4d, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x68, 0x61, 0x6c, 0x6c, 0x49, 0x6e, + 0x55, 0x73, 0x65, 0x10, 0xd1, 0x0f, 0x12, 0x18, 0x0a, 0x13, 0x4d, 0x61, 0x72, 0x74, 0x69, 0x61, + 0x6c, 0x68, 0x61, 0x6c, 0x6c, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x10, 0xd2, 0x0f, + 0x12, 0x1a, 0x0a, 0x15, 0x4d, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x68, 0x61, 0x6c, 0x6c, 0x4e, + 0x6f, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x10, 0xd3, 0x0f, 0x12, 0x1a, 0x0a, 0x15, + 0x4d, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x68, 0x61, 0x6c, 0x6c, 0x41, 0x74, 0x6c, 0x61, 0x73, + 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0xd4, 0x0f, 0x12, 0x1d, 0x0a, 0x18, 0x4d, 0x61, 0x72, 0x74, + 0x69, 0x61, 0x6c, 0x68, 0x61, 0x6c, 0x6c, 0x41, 0x74, 0x6c, 0x61, 0x73, 0x4e, 0x6f, 0x52, 0x65, + 0x77, 0x61, 0x72, 0x64, 0x10, 0xd5, 0x0f, 0x12, 0x19, 0x0a, 0x14, 0x47, 0x6f, 0x75, 0x72, 0x6d, + 0x65, 0x74, 0x4d, 0x6f, 0x72, 0x65, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x54, 0x69, 0x6d, 0x65, 0x10, + 0xb5, 0x10, 0x12, 0x16, 0x0a, 0x11, 0x47, 0x6f, 0x75, 0x72, 0x6d, 0x65, 0x74, 0x53, 0x6b, 0x69, + 0x6c, 0x6c, 0x4d, 0x61, 0x78, 0x4c, 0x76, 0x10, 0xb6, 0x10, 0x12, 0x12, 0x0a, 0x0d, 0x52, 0x74, + 0x61, 0x73, 0x6b, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x10, 0x99, 0x11, 0x12, 0x14, + 0x0a, 0x0f, 0x52, 0x74, 0x61, 0x73, 0x6b, 0x55, 0x6e, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, + 0x64, 0x10, 0x9a, 0x11, 0x12, 0x11, 0x0a, 0x0c, 0x52, 0x74, 0x61, 0x73, 0x6b, 0x4e, 0x6f, 0x52, + 0x74, 0x61, 0x73, 0x6b, 0x10, 0x9b, 0x11, 0x12, 0x12, 0x0a, 0x0d, 0x52, 0x74, 0x61, 0x73, 0x6b, + 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x65, 0x64, 0x10, 0x9c, 0x11, 0x12, 0x15, 0x0a, 0x10, 0x52, + 0x74, 0x61, 0x73, 0x6b, 0x50, 0x72, 0x65, 0x4e, 0x6f, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x10, + 0x9d, 0x11, 0x12, 0x16, 0x0a, 0x11, 0x52, 0x74, 0x61, 0x73, 0x6b, 0x43, 0x6f, 0x6e, 0x64, 0x69, + 0x4e, 0x6f, 0x52, 0x65, 0x61, 0x63, 0x68, 0x10, 0x9e, 0x11, 0x12, 0x13, 0x0a, 0x0e, 0x52, 0x74, + 0x61, 0x73, 0x6b, 0x4e, 0x6f, 0x4c, 0x61, 0x73, 0x74, 0x4f, 0x6e, 0x65, 0x10, 0x9f, 0x11, 0x12, + 0x16, 0x0a, 0x11, 0x52, 0x74, 0x61, 0x73, 0x6b, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x4e, 0x6f, 0x46, + 0x6f, 0x75, 0x6e, 0x64, 0x10, 0xa0, 0x11, 0x12, 0x10, 0x0a, 0x0b, 0x56, 0x69, 0x6b, 0x69, 0x6e, + 0x67, 0x4c, 0x76, 0x45, 0x72, 0x72, 0x10, 0xfd, 0x11, 0x12, 0x13, 0x0a, 0x0e, 0x56, 0x69, 0x6b, + 0x69, 0x6e, 0x67, 0x42, 0x6f, 0x6f, 0x73, 0x54, 0x79, 0x70, 0x65, 0x10, 0xfe, 0x11, 0x12, 0x16, + 0x0a, 0x11, 0x56, 0x69, 0x6b, 0x69, 0x6e, 0x67, 0x42, 0x75, 0x79, 0x4d, 0x61, 0x78, 0x43, 0x6f, + 0x75, 0x6e, 0x74, 0x10, 0xff, 0x11, 0x12, 0x1c, 0x0a, 0x17, 0x56, 0x69, 0x6b, 0x69, 0x6e, 0x67, + 0x4d, 0x61, 0x78, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x10, 0x80, 0x12, 0x12, 0x15, 0x0a, 0x10, 0x56, 0x69, 0x6b, 0x69, 0x6e, 0x67, 0x53, 0x74, + 0x61, 0x67, 0x65, 0x50, 0x73, 0x45, 0x72, 0x72, 0x10, 0x81, 0x12, 0x12, 0x1a, 0x0a, 0x15, 0x4d, + 0x6f, 0x6f, 0x6e, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x48, 0x61, 0x73, 0x45, 0x78, 0x70, + 0x69, 0x72, 0x65, 0x64, 0x10, 0xe1, 0x12, 0x12, 0x16, 0x0a, 0x11, 0x4d, 0x6f, 0x6f, 0x6e, 0x66, + 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x4a, 0x6f, 0x69, 0x6e, 0x55, 0x70, 0x10, 0xe2, 0x12, 0x12, + 0x16, 0x0a, 0x11, 0x4d, 0x6f, 0x6f, 0x6e, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x44, 0x61, + 0x72, 0x65, 0x55, 0x70, 0x10, 0xe3, 0x12, 0x12, 0x1b, 0x0a, 0x16, 0x4d, 0x6f, 0x6f, 0x6e, 0x66, + 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x4e, 0x6f, 0x45, 0x6e, + 0x64, 0x10, 0xe4, 0x12, 0x12, 0x1b, 0x0a, 0x16, 0x4d, 0x6f, 0x6f, 0x6e, 0x66, 0x61, 0x6e, 0x74, + 0x61, 0x73, 0x79, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x4e, 0x6f, 0x57, 0x69, 0x6e, 0x10, 0xe5, + 0x12, 0x12, 0x16, 0x0a, 0x11, 0x4d, 0x6f, 0x6f, 0x6e, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, + 0x4e, 0x6f, 0x4a, 0x6f, 0x69, 0x6e, 0x10, 0xe6, 0x12, 0x12, 0x20, 0x0a, 0x1b, 0x4d, 0x6f, 0x6f, + 0x6e, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x4e, 0x6f, 0x74, 0x45, 0x6e, 0x6f, 0x75, 0x67, + 0x68, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x73, 0x10, 0xe7, 0x12, 0x12, 0x18, 0x0a, 0x13, 0x42, + 0x61, 0x74, 0x74, 0x6c, 0x65, 0x4e, 0x6f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x52, 0x65, 0x63, 0x6f, + 0x72, 0x64, 0x10, 0xc5, 0x13, 0x12, 0x1a, 0x0a, 0x15, 0x4c, 0x69, 0x6e, 0x65, 0x73, 0x74, 0x6f, + 0x72, 0x79, 0x54, 0x61, 0x73, 0x6b, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x10, 0xa9, + 0x14, 0x12, 0x17, 0x0a, 0x12, 0x4c, 0x69, 0x6e, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x4e, 0x6f, + 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x10, 0xaa, 0x14, 0x12, 0x1f, 0x0a, 0x1a, 0x4c, 0x69, + 0x6e, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x54, 0x61, 0x73, 0x6b, 0x44, 0x69, 0x73, 0x61, 0x62, + 0x6c, 0x65, 0x64, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x10, 0xab, 0x14, 0x12, 0x1b, 0x0a, 0x16, 0x4c, + 0x69, 0x6e, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x4e, + 0x6f, 0x4f, 0x70, 0x65, 0x6e, 0x10, 0xac, 0x14, 0x12, 0x1b, 0x0a, 0x16, 0x4c, 0x69, 0x6e, 0x65, + 0x73, 0x74, 0x6f, 0x72, 0x79, 0x50, 0x72, 0x65, 0x4e, 0x6f, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x74, 0x65, 0x10, 0xad, 0x14, 0x12, 0x11, 0x0a, 0x0c, 0x48, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, + 0x4c, 0x76, 0x45, 0x72, 0x72, 0x10, 0x8d, 0x15, 0x12, 0x14, 0x0a, 0x0f, 0x48, 0x75, 0x6e, 0x74, + 0x69, 0x6e, 0x67, 0x42, 0x6f, 0x6f, 0x73, 0x54, 0x79, 0x70, 0x65, 0x10, 0x8e, 0x15, 0x12, 0x17, + 0x0a, 0x12, 0x48, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x42, 0x75, 0x79, 0x4d, 0x61, 0x78, 0x43, + 0x6f, 0x75, 0x6e, 0x74, 0x10, 0x8f, 0x15, 0x12, 0x1d, 0x0a, 0x18, 0x48, 0x75, 0x6e, 0x74, 0x69, + 0x6e, 0x67, 0x4d, 0x61, 0x78, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x43, 0x6f, + 0x75, 0x6e, 0x74, 0x10, 0x90, 0x15, 0x12, 0x1c, 0x0a, 0x17, 0x48, 0x75, 0x6e, 0x74, 0x69, 0x6e, + 0x67, 0x4e, 0x6f, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x10, 0x91, 0x15, 0x12, 0x11, 0x0a, 0x0c, 0x45, 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x74, 0x4c, + 0x76, 0x45, 0x72, 0x72, 0x10, 0x97, 0x15, 0x12, 0x14, 0x0a, 0x0f, 0x45, 0x6e, 0x63, 0x68, 0x61, + 0x6e, 0x74, 0x42, 0x6f, 0x6f, 0x73, 0x54, 0x79, 0x70, 0x65, 0x10, 0x98, 0x15, 0x12, 0x17, 0x0a, + 0x12, 0x45, 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x74, 0x42, 0x75, 0x79, 0x4d, 0x61, 0x78, 0x43, 0x6f, + 0x75, 0x6e, 0x74, 0x10, 0x99, 0x15, 0x12, 0x1d, 0x0a, 0x18, 0x45, 0x6e, 0x63, 0x68, 0x61, 0x6e, + 0x74, 0x4d, 0x61, 0x78, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x10, 0x9a, 0x15, 0x12, 0x1c, 0x0a, 0x17, 0x45, 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x74, + 0x4e, 0x6f, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x10, 0x9b, 0x15, 0x12, 0x11, 0x0a, 0x0c, 0x4c, 0x69, 0x62, 0x72, 0x61, 0x72, 0x79, 0x4d, 0x61, + 0x78, 0x4c, 0x76, 0x10, 0xf1, 0x15, 0x12, 0x12, 0x0a, 0x0d, 0x4c, 0x69, 0x62, 0x72, 0x61, 0x72, + 0x79, 0x4e, 0x6f, 0x44, 0x61, 0x74, 0x61, 0x10, 0xf2, 0x15, 0x12, 0x16, 0x0a, 0x11, 0x4c, 0x69, + 0x62, 0x72, 0x61, 0x72, 0x79, 0x41, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, + 0xf3, 0x15, 0x12, 0x12, 0x0a, 0x0d, 0x4c, 0x69, 0x62, 0x72, 0x61, 0x72, 0x79, 0x52, 0x65, 0x77, + 0x61, 0x72, 0x64, 0x10, 0xf4, 0x15, 0x12, 0x14, 0x0a, 0x0f, 0x4c, 0x69, 0x62, 0x72, 0x61, 0x72, + 0x79, 0x4c, 0x76, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0xf5, 0x15, 0x12, 0x1d, 0x0a, 0x18, + 0x4c, 0x69, 0x62, 0x72, 0x61, 0x72, 0x79, 0x46, 0x65, 0x74, 0x74, 0x65, 0x72, 0x54, 0x61, 0x73, + 0x6b, 0x4e, 0x6f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x10, 0xf6, 0x15, 0x12, 0x1d, 0x0a, 0x18, 0x4c, + 0x69, 0x62, 0x72, 0x61, 0x72, 0x79, 0x50, 0x72, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x4e, 0x6f, 0x46, + 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x10, 0xf7, 0x15, 0x12, 0x18, 0x0a, 0x13, 0x4c, 0x69, + 0x62, 0x72, 0x61, 0x72, 0x79, 0x47, 0x69, 0x76, 0x65, 0x4d, 0x61, 0x78, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x10, 0xf8, 0x15, 0x12, 0x1b, 0x0a, 0x16, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x56, 0x61, + 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0xd5, + 0x16, 0x12, 0x10, 0x0a, 0x0b, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x4e, 0x6f, 0x57, 0x69, 0x6e, + 0x10, 0xd6, 0x16, 0x12, 0x17, 0x0a, 0x12, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0xd7, 0x16, 0x12, 0x16, 0x0a, 0x11, + 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x49, 0x6e, 0x43, 0x6d, 0x64, 0x46, 0x61, 0x69, 0x6c, 0x65, + 0x64, 0x10, 0xd8, 0x16, 0x12, 0x12, 0x0a, 0x0d, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x55, 0x73, + 0x65, 0x72, 0x4f, 0x66, 0x66, 0x10, 0xd9, 0x16, 0x12, 0x1e, 0x0a, 0x19, 0x42, 0x61, 0x74, 0x74, + 0x6c, 0x65, 0x43, 0x61, 0x70, 0x73, 0x6b, 0x69, 0x6c, 0x6c, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x46, + 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0xda, 0x16, 0x12, 0x11, 0x0a, 0x0c, 0x42, 0x61, 0x74, 0x74, + 0x6c, 0x65, 0x4e, 0x6f, 0x4b, 0x65, 0x65, 0x70, 0x10, 0xdb, 0x16, 0x12, 0x13, 0x0a, 0x0e, 0x53, + 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x4e, 0x6f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x10, 0xb8, 0x17, + 0x12, 0x11, 0x0a, 0x0c, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x41, 0x64, 0x64, 0x65, 0x64, + 0x10, 0xb9, 0x17, 0x12, 0x1b, 0x0a, 0x16, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x44, 0x69, + 0x61, 0x6d, 0x6f, 0x6e, 0x64, 0x4e, 0x6f, 0x45, 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x10, 0xba, 0x17, + 0x12, 0x14, 0x0a, 0x0f, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x4e, 0x6f, 0x4d, 0x65, 0x6d, + 0x62, 0x65, 0x72, 0x10, 0xbb, 0x17, 0x12, 0x13, 0x0a, 0x0e, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, + 0x79, 0x4e, 0x6f, 0x52, 0x69, 0x67, 0x68, 0x74, 0x10, 0xbc, 0x17, 0x12, 0x13, 0x0a, 0x0e, 0x53, + 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x4e, 0x6f, 0x41, 0x64, 0x64, 0x65, 0x64, 0x10, 0xbd, 0x17, + 0x12, 0x13, 0x0a, 0x0e, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x44, 0x69, 0x73, 0x6d, 0x69, + 0x73, 0x73, 0x10, 0xbe, 0x17, 0x12, 0x10, 0x0a, 0x0b, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, + 0x51, 0x75, 0x69, 0x74, 0x10, 0xbf, 0x17, 0x12, 0x11, 0x0a, 0x0c, 0x53, 0x6f, 0x63, 0x69, 0x61, + 0x74, 0x79, 0x41, 0x67, 0x72, 0x65, 0x65, 0x10, 0xc0, 0x17, 0x12, 0x12, 0x0a, 0x0d, 0x53, 0x6f, + 0x63, 0x69, 0x61, 0x74, 0x79, 0x52, 0x65, 0x66, 0x75, 0x73, 0x65, 0x10, 0xc1, 0x17, 0x12, 0x15, + 0x0a, 0x10, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x4c, 0x6f, 0x67, 0x50, 0x61, 0x72, 0x61, + 0x6d, 0x73, 0x10, 0xc2, 0x17, 0x12, 0x18, 0x0a, 0x13, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, + 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x4e, 0x6f, 0x44, 0x69, 0x73, 0x73, 0x10, 0xc3, 0x17, 0x12, + 0x16, 0x0a, 0x11, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, + 0x67, 0x4a, 0x6f, 0x62, 0x10, 0xc4, 0x17, 0x12, 0x13, 0x0a, 0x0e, 0x53, 0x6f, 0x63, 0x69, 0x61, + 0x74, 0x79, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x10, 0xc5, 0x17, 0x12, 0x14, 0x0a, 0x0f, + 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x4e, 0x6f, 0x41, 0x63, 0x63, 0x75, 0x73, 0x65, 0x10, + 0xc6, 0x17, 0x12, 0x10, 0x0a, 0x0b, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x53, 0x69, 0x67, + 0x6e, 0x10, 0xc7, 0x17, 0x12, 0x12, 0x0a, 0x0d, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x53, + 0x69, 0x67, 0x6e, 0x65, 0x64, 0x10, 0xc8, 0x17, 0x12, 0x13, 0x0a, 0x0e, 0x53, 0x6f, 0x63, 0x69, + 0x61, 0x74, 0x79, 0x43, 0x44, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x10, 0xc9, 0x17, 0x12, 0x14, 0x0a, + 0x0f, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x4d, 0x61, 0x78, + 0x10, 0xca, 0x17, 0x12, 0x17, 0x0a, 0x12, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x53, 0x65, + 0x6c, 0x66, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x10, 0xcb, 0x17, 0x12, 0x1c, 0x0a, 0x17, + 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x10, 0xcc, 0x17, 0x12, 0x1a, 0x0a, 0x15, 0x53, 0x6f, + 0x63, 0x69, 0x61, 0x74, 0x79, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x52, 0x65, 0x63, 0x65, 0x69, + 0x76, 0x65, 0x64, 0x10, 0xcd, 0x17, 0x12, 0x19, 0x0a, 0x14, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, + 0x79, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x10, 0xce, + 0x17, 0x12, 0x14, 0x0a, 0x0f, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x52, 0x65, 0x73, 0x6f, + 0x75, 0x72, 0x63, 0x65, 0x10, 0xcf, 0x17, 0x12, 0x14, 0x0a, 0x0f, 0x53, 0x6f, 0x63, 0x69, 0x61, + 0x74, 0x79, 0x42, 0x65, 0x6c, 0x6f, 0x6e, 0x67, 0x54, 0x6f, 0x10, 0xd1, 0x17, 0x12, 0x13, 0x0a, + 0x0e, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x65, 0x64, 0x10, + 0xd2, 0x17, 0x12, 0x1a, 0x0a, 0x15, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x41, 0x70, 0x70, + 0x79, 0x4c, 0x76, 0x4e, 0x6f, 0x45, 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x10, 0xd3, 0x17, 0x12, 0x1a, + 0x0a, 0x15, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x54, 0x61, 0x73, 0x6b, 0x56, 0x61, 0x6c, + 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xd4, 0x17, 0x12, 0x1c, 0x0a, 0x17, 0x53, 0x6f, + 0x63, 0x69, 0x61, 0x74, 0x79, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x4e, 0x6f, 0x45, + 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x10, 0xd5, 0x17, 0x12, 0x1b, 0x0a, 0x16, 0x53, 0x6f, 0x63, 0x69, + 0x61, 0x74, 0x79, 0x41, 0x63, 0x69, 0x74, 0x76, 0x69, 0x74, 0x79, 0x52, 0x65, 0x63, 0x65, 0x69, + 0x76, 0x65, 0x10, 0xd6, 0x17, 0x12, 0x15, 0x0a, 0x10, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, + 0x44, 0x69, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x65, 0x64, 0x10, 0xd7, 0x17, 0x12, 0x15, 0x0a, 0x10, + 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x45, 0x78, 0x69, 0x73, 0x74, + 0x10, 0xd8, 0x17, 0x12, 0x19, 0x0a, 0x14, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x51, 0x75, + 0x69, 0x74, 0x4e, 0x6f, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x10, 0xd9, 0x17, 0x12, 0x14, + 0x0a, 0x0f, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x4e, 0x6f, 0x4d, 0x61, 0x73, 0x74, 0x65, + 0x72, 0x10, 0xda, 0x17, 0x12, 0x17, 0x0a, 0x12, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x4e, + 0x6f, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0xdb, 0x17, 0x12, 0x1b, 0x0a, + 0x16, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x4e, + 0x6f, 0x45, 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x10, 0xdc, 0x17, 0x12, 0x18, 0x0a, 0x13, 0x53, 0x6f, + 0x63, 0x69, 0x61, 0x74, 0x79, 0x53, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x4e, 0x6f, 0x69, 0x6e, 0x69, + 0x74, 0x10, 0xdd, 0x17, 0x12, 0x15, 0x0a, 0x10, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x53, + 0x70, 0x6f, 0x72, 0x74, 0x73, 0x45, 0x6e, 0x64, 0x10, 0xde, 0x17, 0x12, 0x16, 0x0a, 0x11, 0x53, + 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x54, 0x65, 0x61, 0x6d, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, + 0x10, 0xdf, 0x17, 0x12, 0x17, 0x0a, 0x12, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x54, 0x61, + 0x73, 0x6b, 0x4e, 0x6f, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x10, 0xe0, 0x17, 0x12, 0x1a, 0x0a, 0x15, + 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x54, 0x61, 0x73, 0x6b, 0x4e, 0x6f, 0x46, 0x69, 0x6e, + 0x69, 0x73, 0x68, 0x65, 0x64, 0x10, 0xe1, 0x17, 0x12, 0x18, 0x0a, 0x13, 0x53, 0x6f, 0x63, 0x69, + 0x61, 0x74, 0x79, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x10, + 0xe2, 0x17, 0x12, 0x18, 0x0a, 0x13, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x41, 0x70, 0x70, + 0x6c, 0x79, 0x4c, 0x76, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x10, 0xe3, 0x17, 0x12, 0x17, 0x0a, 0x12, + 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x43, 0x61, 0x6e, 0x63, + 0x65, 0x6c, 0x10, 0xe4, 0x17, 0x12, 0x19, 0x0a, 0x14, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, + 0x4e, 0x6f, 0x74, 0x69, 0x63, 0x65, 0x54, 0x65, 0x78, 0x74, 0x4c, 0x65, 0x6e, 0x10, 0xe5, 0x17, + 0x12, 0x20, 0x0a, 0x1b, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x49, + 0x6e, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x57, 0x6f, 0x72, 0x64, 0x73, 0x10, + 0xe6, 0x17, 0x12, 0x22, 0x0a, 0x1d, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x4e, 0x6f, 0x74, + 0x69, 0x63, 0x65, 0x49, 0x6e, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x57, 0x6f, + 0x72, 0x64, 0x73, 0x10, 0xe7, 0x17, 0x12, 0x15, 0x0a, 0x10, 0x41, 0x72, 0x65, 0x6e, 0x61, 0x54, + 0x69, 0x63, 0x6b, 0x65, 0x74, 0x42, 0x75, 0x79, 0x55, 0x70, 0x10, 0x9d, 0x18, 0x12, 0x19, 0x0a, + 0x14, 0x41, 0x72, 0x65, 0x6e, 0x61, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x4e, 0x6f, 0x74, 0x45, + 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x10, 0x9e, 0x18, 0x12, 0x17, 0x0a, 0x12, 0x41, 0x72, 0x65, 0x6e, + 0x61, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x4e, 0x70, 0x63, 0x49, 0x6e, 0x43, 0x64, 0x10, 0x9f, + 0x18, 0x12, 0x16, 0x0a, 0x11, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x70, 0x65, 0x61, + 0x74, 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x10, 0x81, 0x19, 0x12, 0x12, 0x0a, 0x0d, 0x54, 0x61, 0x6c, + 0x65, 0x6e, 0x74, 0x45, 0x72, 0x72, 0x44, 0x61, 0x74, 0x61, 0x10, 0x82, 0x19, 0x12, 0x19, 0x0a, + 0x14, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x55, 0x6e, 0x4c, 0x6f, 0x63, 0x6b, 0x65, 0x72, 0x42, + 0x65, 0x66, 0x6f, 0x72, 0x65, 0x10, 0x83, 0x19, 0x12, 0x15, 0x0a, 0x10, 0x54, 0x61, 0x6c, 0x65, + 0x6e, 0x74, 0x52, 0x65, 0x73, 0x65, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, 0x10, 0x84, 0x19, 0x12, + 0x10, 0x0a, 0x0b, 0x54, 0x72, 0x6f, 0x6c, 0x6c, 0x42, 0x75, 0x79, 0x4d, 0x61, 0x78, 0x10, 0xe5, + 0x19, 0x12, 0x11, 0x0a, 0x0c, 0x54, 0x72, 0x6f, 0x6c, 0x6c, 0x53, 0x65, 0x6c, 0x6c, 0x4d, 0x61, + 0x78, 0x10, 0xe6, 0x19, 0x12, 0x16, 0x0a, 0x11, 0x54, 0x72, 0x6f, 0x6c, 0x6c, 0x4d, 0x61, 0x78, + 0x53, 0x65, 0x6c, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xe7, 0x19, 0x12, 0x16, 0x0a, 0x11, + 0x54, 0x72, 0x6f, 0x6c, 0x6c, 0x4d, 0x61, 0x78, 0x49, 0x74, 0x65, 0x6d, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x10, 0xe8, 0x19, 0x12, 0x18, 0x0a, 0x13, 0x54, 0x72, 0x6f, 0x6c, 0x6c, 0x52, 0x65, 0x70, + 0x65, 0x61, 0x74, 0x65, 0x64, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0xe9, 0x19, 0x12, 0x0e, + 0x0a, 0x09, 0x54, 0x72, 0x6f, 0x6c, 0x6c, 0x43, 0x69, 0x74, 0x79, 0x10, 0xea, 0x19, 0x12, 0x0e, + 0x0a, 0x09, 0x54, 0x72, 0x6f, 0x6c, 0x6c, 0x54, 0x61, 0x73, 0x6b, 0x10, 0xeb, 0x19, 0x12, 0x16, + 0x0a, 0x11, 0x54, 0x72, 0x6f, 0x6c, 0x6c, 0x49, 0x74, 0x65, 0x6d, 0x4e, 0x6f, 0x45, 0x6e, 0x6f, + 0x75, 0x67, 0x68, 0x10, 0xec, 0x19, 0x12, 0x18, 0x0a, 0x13, 0x54, 0x72, 0x6f, 0x6c, 0x6c, 0x43, + 0x69, 0x74, 0x79, 0x55, 0x6e, 0x53, 0x65, 0x6c, 0x6c, 0x49, 0x74, 0x65, 0x6d, 0x10, 0xed, 0x19, + 0x12, 0x18, 0x0a, 0x13, 0x54, 0x72, 0x6f, 0x6c, 0x6c, 0x43, 0x69, 0x74, 0x79, 0x55, 0x6e, 0x52, + 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x10, 0xee, 0x19, 0x12, 0x14, 0x0a, 0x0f, 0x54, 0x72, + 0x6f, 0x6c, 0x6c, 0x43, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0xef, 0x19, + 0x12, 0x19, 0x0a, 0x14, 0x48, 0x6f, 0x72, 0x6f, 0x73, 0x63, 0x6f, 0x70, 0x65, 0x4e, 0x6f, 0x74, + 0x54, 0x75, 0x72, 0x6e, 0x65, 0x64, 0x4f, 0x6e, 0x10, 0xc9, 0x1a, 0x12, 0x19, 0x0a, 0x14, 0x48, + 0x6f, 0x72, 0x6f, 0x73, 0x63, 0x6f, 0x70, 0x65, 0x52, 0x65, 0x73, 0x74, 0x43, 0x44, 0x4e, 0x6f, + 0x45, 0x6e, 0x64, 0x10, 0xca, 0x1a, 0x12, 0x16, 0x0a, 0x11, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, + 0x65, 0x67, 0x65, 0x4e, 0x6f, 0x74, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x10, 0xad, 0x1b, 0x12, 0x17, + 0x0a, 0x12, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x52, 0x65, 0x6e, 0x65, 0x77, + 0x54, 0x69, 0x6d, 0x65, 0x10, 0xae, 0x1b, 0x12, 0x0f, 0x0a, 0x0a, 0x56, 0x69, 0x70, 0x4c, 0x76, + 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0xaf, 0x1b, 0x12, 0x11, 0x0a, 0x0c, 0x56, 0x69, 0x70, 0x47, + 0x69, 0x66, 0x74, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0xb0, 0x1b, 0x12, 0x11, 0x0a, 0x0c, 0x56, + 0x69, 0x70, 0x42, 0x75, 0x79, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x10, 0xb1, 0x1b, 0x12, 0x14, + 0x0a, 0x0f, 0x47, 0x72, 0x6f, 0x77, 0x74, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, + 0x65, 0x10, 0x91, 0x1c, 0x12, 0x17, 0x0a, 0x12, 0x47, 0x72, 0x6f, 0x77, 0x74, 0x61, 0x73, 0x6b, + 0x41, 0x64, 0x76, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x10, 0x92, 0x1c, 0x12, 0x17, 0x0a, + 0x12, 0x50, 0x61, 0x79, 0x42, 0x75, 0x79, 0x4e, 0x75, 0x6d, 0x4e, 0x6f, 0x74, 0x45, 0x6e, 0x6f, + 0x75, 0x67, 0x68, 0x10, 0xf5, 0x1c, 0x12, 0x14, 0x0a, 0x0f, 0x50, 0x61, 0x79, 0x52, 0x65, 0x6e, + 0x65, 0x77, 0x54, 0x69, 0x6d, 0x65, 0x45, 0x72, 0x72, 0x10, 0xf6, 0x1c, 0x12, 0x16, 0x0a, 0x11, + 0x50, 0x61, 0x79, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, + 0x64, 0x10, 0xf7, 0x1c, 0x12, 0x14, 0x0a, 0x0f, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, + 0x6b, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x10, 0xd9, 0x1d, 0x12, 0x19, 0x0a, 0x14, 0x57, 0x6f, + 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x4c, 0x76, 0x4e, 0x6f, 0x74, 0x45, 0x6e, 0x6f, 0x75, + 0x67, 0x68, 0x10, 0xda, 0x1d, 0x12, 0x16, 0x0a, 0x11, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x74, 0x61, + 0x73, 0x6b, 0x4e, 0x6f, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x10, 0xdb, 0x1d, 0x12, 0x18, 0x0a, + 0x13, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x4e, 0x6f, 0x43, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x74, 0x65, 0x10, 0xdc, 0x1d, 0x12, 0x15, 0x0a, 0x10, 0x57, 0x6f, 0x72, 0x6c, 0x64, + 0x74, 0x61, 0x73, 0x6b, 0x46, 0x69, 0x6e, 0x69, 0x68, 0x65, 0x64, 0x10, 0xdd, 0x1d, 0x12, 0x1c, + 0x0a, 0x17, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x4c, 0x61, 0x73, 0x74, 0x55, + 0x6e, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x10, 0xde, 0x1d, 0x12, 0x1b, 0x0a, 0x16, + 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, + 0x4e, 0x6f, 0x73, 0x61, 0x6d, 0x65, 0x10, 0xdf, 0x1d, 0x12, 0x1f, 0x0a, 0x1a, 0x57, 0x6f, 0x72, + 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x55, 0x6e, 0x46, + 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x10, 0xe0, 0x1d, 0x12, 0x1d, 0x0a, 0x18, 0x57, 0x6f, + 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x52, 0x65, + 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x10, 0xe1, 0x1d, 0x12, 0x17, 0x0a, 0x12, 0x57, 0x6f, 0x72, + 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x4e, 0x6f, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x10, + 0xe2, 0x1d, 0x12, 0x1a, 0x0a, 0x15, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x42, + 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x10, 0xe3, 0x1d, 0x12, 0x1e, + 0x0a, 0x19, 0x41, 0x63, 0x61, 0x64, 0x65, 0x6d, 0x79, 0x54, 0x61, 0x73, 0x6b, 0x4e, 0x6f, 0x43, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x10, 0xbd, 0x1e, 0x12, 0x15, + 0x0a, 0x10, 0x41, 0x75, 0x74, 0x6f, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x4e, 0x6f, 0x44, 0x61, + 0x74, 0x61, 0x10, 0xa1, 0x1f, 0x12, 0x18, 0x0a, 0x13, 0x41, 0x75, 0x74, 0x6f, 0x42, 0x61, 0x74, + 0x74, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x73, 0x45, 0x72, 0x72, 0x10, 0xa2, 0x1f, 0x12, + 0x11, 0x0a, 0x0c, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x4e, 0x6f, 0x52, 0x65, 0x65, 0x6c, 0x10, + 0x85, 0x20, 0x12, 0x18, 0x0a, 0x13, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x4e, 0x6f, 0x54, 0x65, + 0x6d, 0x70, 0x65, 0x72, 0x61, 0x74, 0x75, 0x72, 0x65, 0x10, 0x86, 0x20, 0x12, 0x15, 0x0a, 0x10, + 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x53, 0x74, 0x6f, 0x76, 0x65, 0x4d, 0x61, 0x78, 0x4c, 0x76, + 0x10, 0x87, 0x20, 0x12, 0x18, 0x0a, 0x13, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x43, 0x75, 0x73, + 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x10, 0x88, 0x20, 0x12, 0x20, 0x0a, + 0x1b, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x45, + 0x71, 0x75, 0x69, 0x70, 0x4e, 0x6f, 0x45, 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x10, 0x89, 0x20, 0x12, + 0x19, 0x0a, 0x14, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x4d, 0x61, 0x78, 0x54, 0x65, 0x6d, 0x70, + 0x65, 0x72, 0x61, 0x74, 0x75, 0x72, 0x65, 0x10, 0x8a, 0x20, 0x12, 0x13, 0x0a, 0x0e, 0x53, 0x6d, + 0x69, 0x74, 0x68, 0x79, 0x4c, 0x61, 0x63, 0x6b, 0x4c, 0x61, 0x76, 0x61, 0x10, 0x8b, 0x20, 0x12, + 0x15, 0x0a, 0x10, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x41, 0x74, 0x6c, 0x61, 0x73, 0x4d, 0x61, + 0x78, 0x4c, 0x76, 0x10, 0x8c, 0x20, 0x12, 0x16, 0x0a, 0x11, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, + 0x41, 0x74, 0x6c, 0x61, 0x73, 0x4c, 0x61, 0x63, 0x6b, 0x4c, 0x76, 0x10, 0x8d, 0x20, 0x12, 0x19, + 0x0a, 0x14, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x54, 0x61, 0x73, 0x6b, 0x4e, 0x6f, 0x46, 0x69, + 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x10, 0x8e, 0x20, 0x12, 0x17, 0x0a, 0x12, 0x53, 0x6d, 0x69, + 0x74, 0x68, 0x79, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x10, + 0x8f, 0x20, 0x12, 0x17, 0x0a, 0x12, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x4e, 0x6f, 0x46, 0x6f, + 0x75, 0x6e, 0x64, 0x41, 0x74, 0x6c, 0x61, 0x73, 0x10, 0x90, 0x20, 0x12, 0x1a, 0x0a, 0x15, 0x53, + 0x6d, 0x69, 0x74, 0x68, 0x79, 0x4e, 0x6f, 0x41, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x41, + 0x74, 0x6c, 0x61, 0x73, 0x10, 0x91, 0x20, 0x12, 0x18, 0x0a, 0x13, 0x53, 0x6d, 0x69, 0x74, 0x68, + 0x79, 0x4c, 0x76, 0x54, 0x6f, 0x6f, 0x6c, 0x73, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0x92, + 0x20, 0x12, 0x15, 0x0a, 0x10, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x4c, 0x76, 0x54, 0x6f, 0x6f, + 0x6c, 0x73, 0x50, 0x72, 0x65, 0x10, 0x93, 0x20, 0x12, 0x17, 0x0a, 0x12, 0x53, 0x6d, 0x69, 0x74, + 0x68, 0x79, 0x41, 0x74, 0x6c, 0x61, 0x73, 0x54, 0x79, 0x70, 0x65, 0x45, 0x72, 0x72, 0x10, 0x94, + 0x20, 0x12, 0x1a, 0x0a, 0x15, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x48, 0x65, 0x72, + 0x6f, 0x4e, 0x6f, 0x52, 0x65, 0x61, 0x63, 0x68, 0x65, 0x64, 0x10, 0xe9, 0x20, 0x12, 0x13, 0x0a, + 0x0e, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x4e, 0x6f, 0x46, 0x72, 0x65, 0x65, 0x10, + 0xea, 0x20, 0x12, 0x1b, 0x0a, 0x16, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x54, 0x69, + 0x63, 0x6b, 0x65, 0x74, 0x4e, 0x6f, 0x45, 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x10, 0xeb, 0x20, 0x12, + 0x19, 0x0a, 0x14, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x48, 0x65, 0x72, 0x6f, 0x41, + 0x73, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x10, 0xec, 0x20, 0x12, 0x18, 0x0a, 0x13, 0x44, 0x69, + 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x54, 0x61, 0x73, 0x6b, 0x45, 0x78, 0x70, 0x69, 0x72, 0x65, + 0x64, 0x10, 0xed, 0x20, 0x12, 0x17, 0x0a, 0x12, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, + 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x4d, 0x61, 0x78, 0x10, 0xee, 0x20, 0x12, 0x17, 0x0a, + 0x12, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x4e, 0x6f, 0x46, 0x69, 0x6e, 0x69, 0x73, + 0x68, 0x65, 0x64, 0x10, 0xef, 0x20, 0x12, 0x19, 0x0a, 0x14, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, + 0x63, 0x68, 0x48, 0x65, 0x72, 0x6f, 0x4e, 0x6f, 0x45, 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x10, 0xf0, + 0x20, 0x12, 0x16, 0x0a, 0x11, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x51, 0x69, 0x65, + 0x63, 0x75, 0x6f, 0x69, 0x6e, 0x67, 0x10, 0xcd, 0x21, 0x12, 0x11, 0x0a, 0x0c, 0x50, 0x72, 0x61, + 0x63, 0x74, 0x69, 0x63, 0x65, 0x53, 0x65, 0x6e, 0x74, 0x10, 0xce, 0x21, 0x12, 0x1a, 0x0a, 0x15, + 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x54, 0x69, + 0x6d, 0x65, 0x4f, 0x75, 0x74, 0x10, 0xcf, 0x21, 0x12, 0x18, 0x0a, 0x13, 0x50, 0x72, 0x61, 0x63, + 0x74, 0x69, 0x63, 0x65, 0x50, 0x69, 0x6c, 0x6c, 0x61, 0x72, 0x4d, 0x61, 0x78, 0x4c, 0x76, 0x10, + 0xd0, 0x21, 0x12, 0x19, 0x0a, 0x14, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x59, 0x6f, + 0x75, 0x51, 0x69, 0x65, 0x63, 0x75, 0x6f, 0x69, 0x6e, 0x67, 0x10, 0xd1, 0x21, 0x12, 0x1c, 0x0a, + 0x17, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x51, + 0x69, 0x65, 0x63, 0x75, 0x6f, 0x69, 0x6e, 0x67, 0x10, 0xd2, 0x21, 0x12, 0x15, 0x0a, 0x10, 0x50, + 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x55, 0x73, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x10, + 0xd3, 0x21, 0x12, 0x16, 0x0a, 0x11, 0x50, 0x61, 0x72, 0x6b, 0x6f, 0x75, 0x72, 0x4d, 0x65, 0x6d, + 0x62, 0x65, 0x72, 0x46, 0x75, 0x6c, 0x6c, 0x10, 0xb1, 0x22, 0x12, 0x19, 0x0a, 0x14, 0x50, 0x61, + 0x72, 0x6b, 0x6f, 0x75, 0x72, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x4f, 0x76, 0x65, 0x72, 0x64, + 0x75, 0x65, 0x10, 0xb2, 0x22, 0x12, 0x1f, 0x0a, 0x1a, 0x50, 0x61, 0x72, 0x6b, 0x6f, 0x75, 0x72, + 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x4e, 0x6f, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, + 0x6f, 0x6e, 0x73, 0x10, 0xb3, 0x22, 0x12, 0x18, 0x0a, 0x13, 0x50, 0x61, 0x72, 0x6b, 0x6f, 0x75, + 0x72, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x65, 0x64, 0x10, 0xb4, 0x22, + 0x12, 0x15, 0x0a, 0x10, 0x44, 0x72, 0x61, 0x67, 0x6f, 0x6e, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x43, + 0x64, 0x69, 0x6e, 0x67, 0x10, 0xb5, 0x22, 0x12, 0x18, 0x0a, 0x13, 0x44, 0x72, 0x61, 0x67, 0x6f, + 0x6e, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x4d, 0x61, 0x78, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0xb6, + 0x22, 0x12, 0x1a, 0x0a, 0x15, 0x44, 0x72, 0x61, 0x67, 0x6f, 0x6e, 0x4e, 0x6f, 0x74, 0x41, 0x64, + 0x75, 0x6c, 0x74, 0x44, 0x64, 0x72, 0x61, 0x67, 0x6f, 0x6e, 0x10, 0xb7, 0x22, 0x12, 0x14, 0x0a, + 0x0f, 0x44, 0x72, 0x61, 0x67, 0x6f, 0x6e, 0x4d, 0x61, 0x78, 0x4c, 0x76, 0x49, 0x74, 0x65, 0x6d, + 0x10, 0xb8, 0x22, 0x12, 0x19, 0x0a, 0x14, 0x52, 0x65, 0x70, 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x46, 0x75, 0x6c, 0x6c, 0x10, 0x95, 0x23, 0x12, 0x1a, + 0x0a, 0x15, 0x52, 0x65, 0x70, 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x6f, 0x50, 0x72, + 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x4c, 0x76, 0x10, 0x96, 0x23, 0x12, 0x15, 0x0a, 0x10, 0x4f, 0x6c, + 0x64, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x10, 0xf9, + 0x23, 0x12, 0x15, 0x0a, 0x10, 0x4f, 0x6c, 0x64, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x46, 0x69, 0x6e, + 0x69, 0x73, 0x68, 0x65, 0x64, 0x10, 0xfa, 0x23, 0x12, 0x16, 0x0a, 0x11, 0x4f, 0x6c, 0x64, 0x74, + 0x69, 0x6d, 0x65, 0x73, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x4f, 0x76, 0x65, 0x72, 0x10, 0xfb, 0x23, + 0x12, 0x1f, 0x0a, 0x1a, 0x4f, 0x6c, 0x64, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x50, 0x72, 0x65, 0x4c, + 0x65, 0x76, 0x65, 0x6c, 0x4e, 0x6f, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x10, 0xfc, + 0x23, 0x12, 0x1a, 0x0a, 0x15, 0x4f, 0x6c, 0x64, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x4e, 0x6f, 0x41, + 0x6c, 0x6c, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x10, 0xfd, 0x23, 0x12, 0x1b, 0x0a, + 0x16, 0x50, 0x61, 0x73, 0x73, 0x6f, 0x6e, 0x48, 0x65, 0x72, 0x6f, 0x4e, 0x75, 0x6d, 0x4e, 0x6f, + 0x74, 0x45, 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x10, 0xdd, 0x24, 0x12, 0x1a, 0x0a, 0x15, 0x50, 0x61, + 0x73, 0x73, 0x6f, 0x6e, 0x48, 0x65, 0x72, 0x6f, 0x55, 0x6e, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, + 0x62, 0x6c, 0x65, 0x10, 0xde, 0x24, 0x12, 0x17, 0x0a, 0x12, 0x50, 0x61, 0x73, 0x73, 0x6f, 0x6e, + 0x53, 0x65, 0x61, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, 0x45, 0x72, 0x72, 0x10, 0xdf, 0x24, 0x12, + 0x13, 0x0a, 0x0e, 0x57, 0x61, 0x72, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x4e, 0x6f, 0x4f, 0x70, 0x65, + 0x6e, 0x10, 0xc1, 0x25, 0x12, 0x21, 0x0a, 0x1c, 0x53, 0x74, 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e, + 0x67, 0x65, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, + 0x48, 0x65, 0x72, 0x6f, 0x10, 0xa5, 0x26, 0x12, 0x21, 0x0a, 0x1c, 0x53, 0x74, 0x6f, 0x6e, 0x65, + 0x68, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x53, 0x65, 0x6c, + 0x65, 0x63, 0x74, 0x42, 0x55, 0x66, 0x66, 0x10, 0xa6, 0x26, 0x12, 0x18, 0x0a, 0x13, 0x53, 0x74, + 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65, 0x50, 0x6f, 0x72, 0x74, 0x61, 0x6c, 0x45, 0x72, + 0x72, 0x10, 0xa7, 0x26, 0x12, 0x1e, 0x0a, 0x19, 0x53, 0x74, 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e, + 0x67, 0x65, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x52, 0x6f, 0x6f, 0x6d, 0x46, 0x61, 0x69, 0x6c, 0x65, + 0x64, 0x10, 0xa8, 0x26, 0x12, 0x1d, 0x0a, 0x18, 0x53, 0x74, 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e, + 0x67, 0x65, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, + 0x10, 0xa9, 0x26, 0x12, 0x1d, 0x0a, 0x18, 0x53, 0x74, 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e, 0x67, + 0x65, 0x47, 0x6f, 0x74, 0x6f, 0x52, 0x6f, 0x6f, 0x6d, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, + 0xaa, 0x26, 0x12, 0x1e, 0x0a, 0x19, 0x53, 0x74, 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65, + 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x42, 0x6f, 0x78, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, + 0xab, 0x26, 0x12, 0x19, 0x0a, 0x14, 0x53, 0x74, 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65, + 0x4e, 0x6f, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x10, 0xac, 0x26, 0x12, 0x17, 0x0a, + 0x12, 0x53, 0x74, 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65, 0x53, 0x74, 0x6f, 0x72, 0x65, + 0x4d, 0x61, 0x78, 0x10, 0xad, 0x26, 0x12, 0x16, 0x0a, 0x11, 0x53, 0x74, 0x6f, 0x6e, 0x65, 0x68, + 0x65, 0x6e, 0x67, 0x65, 0x43, 0x61, 0x6e, 0x74, 0x42, 0x75, 0x79, 0x10, 0xae, 0x26, 0x12, 0x1b, + 0x0a, 0x16, 0x53, 0x74, 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65, 0x48, 0x65, 0x72, 0x6f, + 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x10, 0xaf, 0x26, 0x12, 0x1b, 0x0a, 0x16, 0x53, + 0x74, 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65, 0x62, 0x75, 0x66, 0x66, 0x52, 0x65, 0x73, + 0x65, 0x74, 0x45, 0x72, 0x72, 0x10, 0xb0, 0x26, 0x12, 0x11, 0x0a, 0x0c, 0x41, 0x63, 0x74, 0x69, + 0x76, 0x69, 0x74, 0x79, 0x4f, 0x76, 0x65, 0x72, 0x10, 0x89, 0x27, 0x12, 0x15, 0x0a, 0x10, 0x41, + 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x55, 0x6e, 0x4f, 0x70, 0x65, 0x6e, 0x65, 0x64, 0x10, + 0x8a, 0x27, 0x12, 0x18, 0x0a, 0x13, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x52, 0x65, + 0x70, 0x61, 0x74, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0x8b, 0x27, 0x12, 0x16, 0x0a, 0x11, + 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x4e, 0x6f, 0x74, 0x49, 0x6e, 0x74, 0x69, 0x6d, + 0x65, 0x10, 0x8c, 0x27, 0x12, 0x14, 0x0a, 0x0f, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, + 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x10, 0x8d, 0x27, 0x12, 0x17, 0x0a, 0x12, 0x41, 0x63, + 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x43, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, + 0x10, 0x8e, 0x27, 0x12, 0x1c, 0x0a, 0x17, 0x43, 0x61, 0x70, 0x74, 0x75, 0x72, 0x65, 0x73, 0x68, + 0x65, 0x65, 0x70, 0x52, 0x61, 0x6e, 0x6b, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x65, 0x64, 0x10, 0xed, + 0x27, 0x12, 0x16, 0x0a, 0x11, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x43, 0x61, + 0x6e, 0x74, 0x53, 0x77, 0x61, 0x70, 0x10, 0xd1, 0x28, 0x12, 0x15, 0x0a, 0x10, 0x45, 0x6e, 0x74, + 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x4e, 0x6f, 0x50, 0x6f, 0x77, 0x65, 0x72, 0x10, 0xd2, 0x28, + 0x12, 0x19, 0x0a, 0x14, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x4e, 0x6f, 0x48, + 0x65, 0x72, 0x6f, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x10, 0xd3, 0x28, 0x12, 0x16, 0x0a, 0x11, 0x45, + 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x4e, 0x6f, 0x45, 0x6e, 0x65, 0x72, 0x67, 0x79, + 0x10, 0xd4, 0x28, 0x12, 0x1a, 0x0a, 0x15, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, + 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0xd5, 0x28, 0x12, + 0x1b, 0x0a, 0x16, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x50, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x4e, 0x6f, 0x52, 0x65, 0x61, 0x64, 0x79, 0x10, 0xd6, 0x28, 0x12, 0x17, 0x0a, 0x12, + 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x4e, 0x6f, 0x74, 0x4d, 0x61, 0x73, 0x74, + 0x65, 0x72, 0x10, 0xd7, 0x28, 0x12, 0x1c, 0x0a, 0x17, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61, + 0x69, 0x6e, 0x44, 0x69, 0x73, 0x73, 0x6f, 0x6c, 0x76, 0x65, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, + 0x10, 0xd8, 0x28, 0x12, 0x18, 0x0a, 0x13, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, + 0x42, 0x6f, 0x78, 0x45, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x10, 0xd9, 0x28, 0x42, 0x06, 0x5a, + 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( From 85004bc35b15dce11b3fb5f1c87814f061bf42dd Mon Sep 17 00:00:00 2001 From: meixiongfeng <766881921@qq.com> Date: Tue, 14 Nov 2023 17:25:27 +0800 Subject: [PATCH 5/5] =?UTF-8?q?=E6=9D=A1=E4=BB=B6=E5=BC=80=E5=90=AF?= =?UTF-8?q?=E9=85=8D=E7=BD=AE=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- bin/json/game_buriedcondi.json | 6 +- bin/json/game_guide.json | 76 +++++++++++++++++++++++- bin/json/game_opencond.json | 105 +++++++++++++++++++++++++++++---- bin/json/game_worldtask.json | 2 +- 4 files changed, 172 insertions(+), 17 deletions(-) diff --git a/bin/json/game_buriedcondi.json b/bin/json/game_buriedcondi.json index ea508f0e1..3ad3be8b7 100644 --- a/bin/json/game_buriedcondi.json +++ b/bin/json/game_buriedcondi.json @@ -24368,10 +24368,10 @@ }, { "id": 12070035, - "rtype": 0, - "ctype": 0, + "rtype": 1, + "ctype": 1, "notify": [], - "type_sp": 0, + "type_sp": 1, "tasktxt": { "key": "buried_buried_condi_tasktxt_732", "text": "吃面战斗2场+起名" diff --git a/bin/json/game_guide.json b/bin/json/game_guide.json index b74ce93f7..d2e3fcbe8 100644 --- a/bin/json/game_guide.json +++ b/bin/json/game_guide.json @@ -46,7 +46,7 @@ "interface": "", "condition": "", "followtj": "JpystickMove", - "followguide": 0, + "followguide": 1000103, "finger": [ "joystick" ], @@ -73,5 +73,79 @@ "skip": 0, "skipgroup": 0, "reward": [] + }, + { + "id": 1000103, + "group": 1, + "type": 3, + "startPar": "", + "parameter": "", + "interface": "", + "condition": "", + "followtj": "", + "followguide": 0, + "finger": [ + "command", + "mainCom$.taskpanel$.mainTaskList.tasklist$", + "0" + ], + "offset": { + "x": 0, + "y": 0 + }, + "fingerTime": 0.1, + "objSize": { + "x": 0, + "y": 0 + }, + "objOffset": { + "x": 0, + "y": 0 + }, + "txt": "", + "speakerface": 0, + "sound": "", + "mask": 1, + "lock": 1, + "uishow": 0, + "skiptime": 5000, + "skip": 0, + "skipgroup": 0, + "reward": [] + }, + { + "id": 1000501, + "group": 5, + "type": 3, + "startPar": "", + "parameter": "", + "interface": "", + "condition": "funcopen_mail", + "followtj": "", + "followguide": 0, + "finger": [], + "offset": { + "x": 0, + "y": 0 + }, + "fingerTime": 0, + "objSize": { + "x": 0, + "y": 0 + }, + "objOffset": { + "x": 0, + "y": 0 + }, + "txt": "", + "speakerface": 0, + "sound": "", + "mask": 0, + "lock": 0, + "uishow": 0, + "skiptime": 0, + "skip": 0, + "skipgroup": 0, + "reward": [] } ] \ No newline at end of file diff --git a/bin/json/game_opencond.json b/bin/json/game_opencond.json index ceb8b9d69..7a3202e78 100644 --- a/bin/json/game_opencond.json +++ b/bin/json/game_opencond.json @@ -115,8 +115,8 @@ }, "main": [ { - "key": 1, - "param": 1 + "key": 2, + "param": 1101000 } ], "wkqbx": 2, @@ -223,8 +223,8 @@ }, "main": [ { - "key": 1, - "param": 1 + "key": 3, + "param": 20050 } ], "wkqbx": 2, @@ -250,8 +250,8 @@ }, "main": [ { - "key": 1, - "param": 1 + "key": 2, + "param": 1101000 } ], "wkqbx": 2, @@ -844,8 +844,8 @@ }, "main": [ { - "key": 1, - "param": 1 + "key": 3, + "param": 20050 } ], "wkqbx": 0, @@ -1168,8 +1168,8 @@ }, "main": [ { - "key": 1, - "param": 1 + "key": 3, + "param": 20050 } ], "wkqbx": 1, @@ -2353,7 +2353,7 @@ "param": 20050 } ], - "wkqbx": 0, + "wkqbx": 2, "img": "", "prompt": { "key": "opencond_opencond_prompt_86", @@ -2380,7 +2380,7 @@ "param": 10 } ], - "wkqbx": 0, + "wkqbx": 2, "img": "", "prompt": { "key": "opencond_opencond_prompt_87", @@ -2394,5 +2394,86 @@ "key": "", "text": "" } + }, + { + "id": "achievement", + "name": { + "key": "opencond_opencond_name_90", + "text": "成就" + }, + "main": [ + { + "key": 2, + "param": 1101000 + } + ], + "wkqbx": 2, + "img": "", + "prompt": { + "key": "", + "text": "" + }, + "uiid": 0, + "activateType": 0, + "notify": [], + "kqbx": 0, + "kqbx_text": { + "key": "", + "text": "" + } + }, + { + "id": "photo", + "name": { + "key": "opencond_opencond_name_91", + "text": "照相" + }, + "main": [ + { + "key": 2, + "param": 1101000 + } + ], + "wkqbx": 2, + "img": "", + "prompt": { + "key": "", + "text": "" + }, + "uiid": 0, + "activateType": 0, + "notify": [], + "kqbx": 0, + "kqbx_text": { + "key": "", + "text": "" + } + }, + { + "id": "overview", + "name": { + "key": "opencond_opencond_name_92", + "text": "导航" + }, + "main": [ + { + "key": 2, + "param": 1101000 + } + ], + "wkqbx": 2, + "img": "", + "prompt": { + "key": "", + "text": "" + }, + "uiid": 0, + "activateType": 0, + "notify": [], + "kqbx": 0, + "kqbx_text": { + "key": "", + "text": "" + } } ] \ No newline at end of file diff --git a/bin/json/game_worldtask.json b/bin/json/game_worldtask.json index 463137f9b..3242f24c8 100644 --- a/bin/json/game_worldtask.json +++ b/bin/json/game_worldtask.json @@ -35,7 +35,7 @@ "tasktips": 0, "lock_add": 0, "finish": [ - 1, + 3, 101 ], "finishparameter": "timeline_target_cut01",