From abc4bab88e626fd545fcb11e92413324d46c1dd1 Mon Sep 17 00:00:00 2001 From: hujiabin <519660157@qq.com> Date: Tue, 9 Jul 2024 11:12:27 +0800 Subject: [PATCH] 1 --- webapp/models/TicketConsumeRecord.php | 18 ++++++++++++++++ webapp/services/RoomBattleDataService.php | 26 ++++++++++++++--------- webapp/services/TameBattleDataService.php | 3 ++- 3 files changed, 36 insertions(+), 11 deletions(-) diff --git a/webapp/models/TicketConsumeRecord.php b/webapp/models/TicketConsumeRecord.php index 5787afb2..de678c3a 100644 --- a/webapp/models/TicketConsumeRecord.php +++ b/webapp/models/TicketConsumeRecord.php @@ -28,4 +28,22 @@ class TicketConsumeRecord extends BaseModel { ); } + public static function getRecord($matchRoomUuid){ + if (!self::$matchRoomUuid || self::$matchRoomUuid != $matchRoomUuid){ + self::$matchRoomUuid = $matchRoomUuid; + $rows = SqlHelper::ormSelect( + myself()->_getSelfMysql(), + 't_ticket_consume_record', + array( + 'match_room_uuid' => $matchRoomUuid, + ) + ); + self::$ticketNum = count($rows); + } + return self::$ticketNum; + } + + private static $matchRoomUuid = null; + private static $ticketNum = 0; + } diff --git a/webapp/services/RoomBattleDataService.php b/webapp/services/RoomBattleDataService.php index b97163bf..be05de78 100644 --- a/webapp/services/RoomBattleDataService.php +++ b/webapp/services/RoomBattleDataService.php @@ -5,6 +5,7 @@ require_once('models/BattleSettlement.php'); require_once('models/Hero.php'); require_once('models/HashRate.php'); require_once('models/Season.php'); +require_once('models/TicketConsumeRecord.php'); require_once('mt/MapMode.php'); require_once('mt/Rank.php'); @@ -16,6 +17,7 @@ require_once('services/PropertyChgService.php'); require_once('services/LogService.php'); require_once('phpcommon/tglog.php'); +use models\TicketConsumeRecord; use mt; use services; use phpcommon; @@ -47,6 +49,7 @@ class RoomBattleDataService extends BaseService { public $maxLevel= 0; public $maxAlive= 0; public $realUserCount= 0; + public $matchRoomUuid= 0; public $logData = array(); @@ -73,6 +76,7 @@ class RoomBattleDataService extends BaseService { $member['battle_score'] = round($battleScore,4); // //验证非机器人 + $this->matchRoomUuid = getXVal($member,'match_room_uuid', 0); $teamRanked = getXVal($member,'pvp_team_rank', 0); $winningPro = getXVal($member,'winningPro', 0); $account = getXVal($member,'account_id', 0); @@ -196,17 +200,18 @@ class RoomBattleDataService extends BaseService { } } } - if ($gold > 0){ -// $strArr = explode("|",$rewardMeta['goldParam']); - $coefficientArr = explode(";",$rewardMeta['goldParam']); - $coefficient = isset($coefficientArr[$teamRank-1]) ? $coefficientArr[$teamRank-1] : 0; - if ($this->mapMode == mt\MapMode::GOLD_MODE){ - $gold = floor($gold * $coefficient * ($battleScore / $teamScoreAvg)); - } - if ($this->mapMode == mt\MapMode::BET_MODE){ - $gold = floor($gold * $this->realUserCount * $coefficient * ($battleScore / $teamScore)); - } + $coefficientArr = explode(";",$rewardMeta['goldParam']); + $coefficient = isset($coefficientArr[$teamRank-1]) ? $coefficientArr[$teamRank-1] : 0; + if ($this->mapMode == mt\MapMode::GOLD_MODE){ + $gold = floor($gold * $coefficient * ($battleScore / $teamScoreAvg)); } + if ($this->mapMode == mt\MapMode::BET_MODE){ + $ticketMeta = \mt\Item::get(900006); + $baseGold = $ticketMeta['gold']; + $ticketNum = TicketConsumeRecord::getRecord($this->matchRoomUuid); + $gold = floor($ticketMeta['gold'] * $ticketNum * $coefficient * ($battleScore / $teamScore)); + } + $baseValue = $gold; if ($this->mapMode == mt\MapMode::GOLD_MODE){ myself()->_incDailyV(TN_DAILY_GOLD_MODE_BATTLE_TIMES,(int)$heroDb['idx'],1); @@ -306,6 +311,7 @@ class RoomBattleDataService extends BaseService { ), 'betInfo' => array( 'realUser' => $this->realUserCount, + 'ticketNum' => isset($ticketNum) ? $ticketNum : 0, 'coefficient' => isset($coefficient) ? $coefficient : 0, 'battleScore' => round($battleScore,9), 'teamScore' => round($teamScore,9), diff --git a/webapp/services/TameBattleDataService.php b/webapp/services/TameBattleDataService.php index 25382523..1209525f 100644 --- a/webapp/services/TameBattleDataService.php +++ b/webapp/services/TameBattleDataService.php @@ -722,7 +722,8 @@ class TameBattleDataService extends BaseService { 'dead_times'=> getXVal($info,'dead_times', 0), 'battle_score'=> 0, 'reward' => $rewards, - 'winningPro' => $winningPro + 'winningPro' => $winningPro, + 'match_room_uuid' => getXVal($info,'match_room_uuid', 0), ); array_push($data['members'],$temp); }