diff --git a/webapp/models/RealtimeData.php b/webapp/models/RealtimeData.php index 5c3e00cb..476cada0 100644 --- a/webapp/models/RealtimeData.php +++ b/webapp/models/RealtimeData.php @@ -7,11 +7,26 @@ use phpcommon\SqlHelper; class RealtimeData extends BaseModel { + private static $onlineNum = null; + private static $serverDays = null; //获取在线人数 public static function getOnline() { - $onlineNum = self::internalGet('online_num'); - return max(1, $onlineNum ? $onlineNum : 0); + if (is_null(self::$onlineNum)){ + $db = self::internalGet('online_num'); + self::$onlineNum = max(1, $db ? $db['value1']: 0); + } + return self::$onlineNum; + } + + //获取服务器自然天数 + public static function getServerDays() + { + if (is_null(self::$serverDays)){ + $db = self::internalGet('server_days'); + self::$serverDays = max(1, $db ? $db['value1']: 0); + } + return self::$serverDays; } private static function internalGet($name) diff --git a/webapp/services/BattleDataService.php b/webapp/services/BattleDataService.php index 39614ae4..8ff52056 100644 --- a/webapp/services/BattleDataService.php +++ b/webapp/services/BattleDataService.php @@ -149,7 +149,7 @@ class BattleDataService extends BaseService { //录入战斗记录 -// $this->saveBattleHistory(); + $this->saveBattleHistory(); switch ($matchMode) { case self::MATCH_MODE_PVP: diff --git a/webapp/services/FormulaService.php b/webapp/services/FormulaService.php index 546393ab..6cdac994 100644 --- a/webapp/services/FormulaService.php +++ b/webapp/services/FormulaService.php @@ -7,10 +7,12 @@ require_once('mt/Item.php'); require_once('mt/FormulaPvp.php'); require_once('mt/HeroQuality.php'); require_once('mt/GunQuality.php'); +require_once('models/RealtimeData.php'); use models\Chip; use models\Gun; use models\Hero; +use models\RealtimeData; use mt; class FormulaService extends BaseService { @@ -735,28 +737,28 @@ class FormulaService extends BaseService { //英雄体力值全局衰减系数 public static function GAC_PS_Value($quality){ //GAC_PS_Value=ROUND(MAX(ROUND(2-0.2/30*服务器自然天数,3)/ROUND(1.2+0.0286*(英雄NFT阶数-1),3),1)*MAX(SIGN(服务器自然天数<=180)*1+SIGN(服务器自然天数>180)*99.87%^(服务器自然天数-180),90%),3) - $day = 1; + $day = RealtimeData::getServerDays(); return round(max(round(2-0.2/30*$day,3)/round(1.2+0.0286*($quality-1),3),1)*max(($day<=180?1:0)*1+($day>180?1:0)*pow(0.9987,$day-180),0.9),3); } //武器耐久度全局衰减系数 public static function GAC_D_Value($quality){ //GAC_D_Value=ROUND(MAX(ROUND(2-0.2/30*服务器自然天数,3)/ROUND(1.2+0.0286*(枪械NFT阶数-1),3),1)*MAX(SIGN(服务器自然天数<=180)*1+SIGN(服务器自然天数>180)*99.87%^(服务器自然天数-180),90%),3) - $day = 1; + $day = RealtimeData::getServerDays(); return round(max(round(2-0.2/30*$day,3)/round(1.2+0.0286*($quality-1),3),1)*max(($day<=180?1:0)*1+($day>180?1:0)*pow(0.9987,$day-180),0.9),3); } //英雄芯片体力值全局衰减系数 public static function Hero_Chip_GAC_PS_Value($grand){ //Hero_Chip_GAC_PS_Value=ROUND(MAX(ROUND(2-0.2/30*服务器自然天数,3)/ROUND(1+0.04*芯片星级,3),1)*MAX(SIGN(服务器自然天数<=180)*1+SIGN(服务器自然天数>180)*99.87%^(服务器自然天数-180),90%),3) - $day = 1; + $day = RealtimeData::getServerDays(); return round(max(round(2-0.2/30*$day,3)/round(1+0.04*$grand,3),1)*max(($day<=180?1:0)*1+($day>180?1:0)*pow(0.9987,$day-180),0.9),3); } //武器芯片体力值全局衰减系数 public static function Weapon_Chip_GAC_PS_Value($grand){ //Weapon_Chip_GAC_PS_Value=ROUND(MAX(ROUND(2-0.2/30*服务器自然天数,3)/ROUND(1+0.04*芯片星级,3),1)*MAX(SIGN(服务器自然天数<=180)*1+SIGN(服务器自然天数>180)*99.87%^(服务器自然天数-180),90%),3) - $day = 1; + $day = RealtimeData::getServerDays(); return round(max(round(2-0.2/30*$day,3)/round(1+0.04*$grand,3),1)*max(($day<=180?1:0)*1+($day>180?1:0)*pow(0.9987,$day-180),0.9),3); }