From 6666868fca3a37b494c70c8f317544830d24a0b4 Mon Sep 17 00:00:00 2001 From: liwei1dao Date: Thu, 1 Feb 2024 14:25:46 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=8A=E4=BC=A0=E7=AB=9E=E6=8A=80=E5=9C=BA?= =?UTF-8?q?=E8=BF=9E=E8=83=9C=E7=A7=AF=E5=88=86=E5=8A=A0=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/arena/api_challengereward.go | 12 ++++++++++++ modules/arena/configure.go | 23 +++++++++++++++++++++++ 2 files changed, 35 insertions(+) diff --git a/modules/arena/api_challengereward.go b/modules/arena/api_challengereward.go index 3b4064ff3..b877391c7 100644 --- a/modules/arena/api_challengereward.go +++ b/modules/arena/api_challengereward.go @@ -18,6 +18,7 @@ func (this *apiComp) ChallengeRewardCheck(session comm.IUserSession, req *pb.Are func (this *apiComp) ChallengeReward(session comm.IUserSession, req *pb.ArenaChallengeRewardReq) (errdata *pb.ErrorData) { var ( reward *cfg.GameArenaActiveRewardData + conf *cfg.GameArenaActiveWinData info *pb.DBArenaUser rival *pb.DBArenaUser red *pb.ArenaPlayer @@ -156,6 +157,17 @@ func (this *apiComp) ChallengeReward(session comm.IUserSession, req *pb.ArenaCha } } this.module.modelArena.integralCompute(red, bule, req.Iswin) + if req.Iswin { + if conf, err = this.module.configure.getGameArenaActiveWinData(info.Streak); err != nil { + errdata = &pb.ErrorData{ + Code: pb.ErrorCode_ConfigNoFound, + Message: err.Error(), + } + return + } + red.Integral += conf.Txt.N + red.Changeintegral += conf.Txt.N + } if !req.Isai { this.module.modelRank.updateArenaRank(red, bule) info.Integral = red.Integral diff --git a/modules/arena/configure.go b/modules/arena/configure.go index 2fad9308b..ac802a241 100644 --- a/modules/arena/configure.go +++ b/modules/arena/configure.go @@ -45,6 +45,7 @@ func (this *configureComp) Init(service core.IService, module core.IModule, comp this.LoadConfigure(game_arenachallengenpc, cfg.NewGameArenaChallengeNpc) this.LoadConfigure(game_arenaactiveking, cfg.NewGameArenaActiveKing) this.LoadConfigure(game_arenaweeklytask, cfg.NewGameArenaWeeklyTask) + this.LoadConfigure(game_arenaactivewin, cfg.NewGameArenaActiveWin) configure.RegisterConfigure(game_monsterformat, cfg.NewGameMonsterFormat, func() { this.mformatlock.Lock() if v, err := this.GetConfigure(game_monsterformat); err != nil { @@ -240,3 +241,25 @@ func (this *configureComp) getGameActiveTaskData(id int32) (result *cfg.GameAren } return } + +//查询剧情npc系统 +func (this *configureComp) getGameArenaActiveWinData(num int32) (conf *cfg.GameArenaActiveWinData, err error) { + var ( + v interface{} + confs []*cfg.GameArenaActiveWinData + ) + if v, err = this.GetConfigure(game_arenaactivewin); err != nil { + this.module.Errorln(err) + } else { + confs = v.(*cfg.GameArenaActiveWin).GetDataList() + for i := len(confs) - 1; i >= 0; i-- { + if num >= confs[i].Winningstreak { + conf = confs[i] + return + } + } + err = comm.NewNotFoundConfErr(moduleName, game_arenaactivewin, num) + this.module.Errorln(err) + } + return +}