From 0f7ceebe232c90942bece148fd54e5c5d50b1f3b Mon Sep 17 00:00:00 2001 From: hujiabin <519660157@qq.com> Date: Fri, 14 Jun 2024 11:32:23 +0800 Subject: [PATCH] 1 --- webapp/models/Hero.php | 6 +++--- webapp/services/RoomBattleDataService.php | 13 ++++++++----- 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/webapp/models/Hero.php b/webapp/models/Hero.php index 1e72df62..fc8fafc5 100644 --- a/webapp/models/Hero.php +++ b/webapp/models/Hero.php @@ -246,7 +246,7 @@ class Hero extends BaseModel { 'valid_time' => max(0, 86400 * $heroAtteMeta['validTime']), 'is_old' => $row['is_old'], - "current_times" => myself()->_getDailyV(TN_DAILY_GOLD_MODE_BATTLE_TIMES,0), + "current_times" => myself()->_getDailyV(TN_DAILY_GOLD_MODE_BATTLE_TIMES,$row['idx']), "total_times" => $heroAtteMeta['roundPerDay'], ); @@ -330,7 +330,7 @@ class Hero extends BaseModel { 'valid_time' => max(0, 86400 * $heroAtteMeta['validTime']), 'is_old' => $row['is_old'], - "current_times" => myself()->_getDailyV(TN_DAILY_GOLD_MODE_BATTLE_TIMES,0), + "current_times" => myself()->_getDailyV(TN_DAILY_GOLD_MODE_BATTLE_TIMES,$row['idx']), "total_times" => $heroAtteMeta['roundPerDay'], ); @@ -364,7 +364,7 @@ class Hero extends BaseModel { 'ability' => self::abilityInfo($row), 'valid_time' => max(0, 86400 * $heroAtteMeta['validTime']), - "current_times" => myself()->_getDailyV(TN_DAILY_GOLD_MODE_BATTLE_TIMES,0), + "current_times" => myself()->_getDailyV(TN_DAILY_GOLD_MODE_BATTLE_TIMES,$row['idx']), "total_times" => $heroAtteMeta['roundPerDay'], ); } diff --git a/webapp/services/RoomBattleDataService.php b/webapp/services/RoomBattleDataService.php index 829bd9bb..af218dd1 100644 --- a/webapp/services/RoomBattleDataService.php +++ b/webapp/services/RoomBattleDataService.php @@ -170,19 +170,22 @@ class RoomBattleDataService extends BaseService { if (!$rewardMeta){ return ; } + $heroTimes = myself()->_getDailyV(TN_DAILY_GOLD_MODE_BATTLE_TIMES,$heroDb['idx']); $goldModeTimes = myself()->_getDailyV(TN_DAILY_GOLD_MODE_BATTLE_TIMES,0); $heroMeta = \mt\Item::get($heroDb['hero_id']); $heroAtteMeta = mt\EconomyAttribute::findByGrade($heroMeta['relationship'],$heroDb['quality']); - $maxTimes = $heroAtteMeta['roundPerDay']; - if ($this->mapMode == mt\MapMode::GOLD_MODE){ - myself()->_incDailyV(TN_DAILY_GOLD_MODE_BATTLE_TIMES,0,1); - } + $heroTimesMax = $heroAtteMeta['roundPerDay']; + //金币模式检验 if ($this->mapMode == mt\MapMode::GOLD_MODE && // ($goldModeTimes >= $mapModeMeta['rewards_max_time'] )){ - (!Hero::verifyValid($heroDb) || $goldModeTimes >= $maxTimes )){ + (!Hero::verifyValid($heroDb) || $heroTimes >= $heroTimesMax || $goldModeTimes >= $mapModeMeta['rewards_max_time'])){ error_log("金币模式:出战英雄没有打金时间或每日打金场次上限"); }else{ + if ($this->mapMode == mt\MapMode::GOLD_MODE){ + myself()->_incDailyV(TN_DAILY_GOLD_MODE_BATTLE_TIMES,$heroDb['idx'],1); + myself()->_incDailyV(TN_DAILY_GOLD_MODE_BATTLE_TIMES,0,1); + } if (!empty($rewardMeta['goldLoot'])){ $items = LootService::dropOutItem($rewardMeta['goldLoot']); foreach ($items as $item){