generalObj; $date = $general->getTurnTime($general::TURNTIME_HM); $logger = $general->getLogger(); $destCity = $this->destCity; $destCityName = $destCity['name']; $destCityID = $destCity['city']; $commandName = $this->getName(); // 파괴 $defAmount = Util::valueFit($rng->nextRangeInt(GameConst::$sabotageDamageMin, GameConst::$sabotageDamageMax), null, $destCity['def']); $wallAmount = Util::valueFit($rng->nextRangeInt(GameConst::$sabotageDamageMin, GameConst::$sabotageDamageMax), null, $destCity['wall']); if($defAmount < 0){ $defAmount = 0; } if($wallAmount < 0){ $wallAmount = 0; } $destCity['def'] -= $defAmount; $destCity['wall'] -= $wallAmount; DB::db()->update('city', [ 'state'=>32, 'def'=>$destCity['def'], 'wall'=>$destCity['wall'] ], 'city=%i', $destCityID); $defAmountText = number_format($defAmount); $wallAmountText = number_format($wallAmount); $josaYi = JosaUtil::pick($destCityName, '이'); $logger->pushGlobalActionLog("누군가가 {$destCityName}의 성벽을 허물었습니다."); $josaYi = JosaUtil::pick($commandName, '이'); $logger->pushGeneralActionLog("{$destCityName}에 {$commandName}{$josaYi} 성공했습니다. <1>$date"); $logger->pushGeneralActionLog( "도시의 수비가 {$defAmountText}, 성벽이 {$wallAmountText}만큼 감소하고, 장수 {$injuryCount}명이 부상 당했습니다.", ActionLogger::PLAIN ); } }