feat,refac: 게임 로직 내 '랜덤'을 RandUtil을 활용하여 재설정
- 기존의 랜덤 코드는 deprecated 처리 - 서버 시작 시 랜덤하게 정해진 hiddenSeed를 활용 - 랜덤 생성 단위 - 월 실행 - 사령턴 실행 결과 - 커맨드 실행 결과 - 작위 보상 - 부대장 생성 - 유니크 획득 시도 - 설문 조사 - 장수 생성 - NPC국 생성, NPC 생성, NPC의 토너먼트 베팅 - 전투 - 도시 점령 - 자율 행동 선택 - 랜덤 턴 변경 - 거래장, 토너먼트 등 구 랜덤 코드를 이용하는 잔여 코드 있음
This commit is contained in:
@@ -8,7 +8,8 @@ class WarUnitCity extends WarUnit{
|
||||
|
||||
protected $cityRate;
|
||||
|
||||
function __construct($raw, $rawNation, int $year, int $month, $cityRate){
|
||||
function __construct(RandUtil $rng, $raw, $rawNation, int $year, int $month, $cityRate){
|
||||
$this->rng = $rng;
|
||||
$general = new DummyGeneral(false);
|
||||
$general->setVar('city', $raw['city']);
|
||||
$general->setVar('nation', $raw['nation']);
|
||||
@@ -23,7 +24,7 @@ class WarUnitCity extends WarUnit{
|
||||
$this->logger = $general->getLogger();
|
||||
$this->crewType = GameUnitConst::byID(GameUnitConst::CREWTYPE_CASTLE);
|
||||
|
||||
$this->hp = $this->getCityVar('def') * 10;
|
||||
$this->hp = $this->getCityVar('def') * 10;
|
||||
|
||||
//수비자 보정
|
||||
if($this->getCityVar('level') == 1){
|
||||
@@ -78,7 +79,7 @@ class WarUnitCity extends WarUnit{
|
||||
$this->deadCurr += $damage;
|
||||
$this->hp -= $damage;
|
||||
$this->increaseVarWithLimit('wall', -$damage/20, 0);
|
||||
|
||||
|
||||
return $this->hp;
|
||||
}
|
||||
|
||||
@@ -123,7 +124,7 @@ class WarUnitCity extends WarUnit{
|
||||
|
||||
$nationID = $oppose->getNationVar('nation');
|
||||
$newConflict = false;
|
||||
|
||||
|
||||
$dead = max(1, $this->dead);
|
||||
|
||||
if(!$conflict || $this->getHP() == 0){ // 선타, 막타 보너스
|
||||
@@ -147,7 +148,7 @@ class WarUnitCity extends WarUnit{
|
||||
|
||||
return $newConflict;
|
||||
}
|
||||
|
||||
|
||||
|
||||
function applyDB(\MeekroDB $db):bool{
|
||||
$updateVals = $this->getUpdatedValues();
|
||||
@@ -156,7 +157,7 @@ class WarUnitCity extends WarUnit{
|
||||
if(!$updateVals){
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
$db->update('city', $updateVals, 'city=%i', $this->raw['city']);
|
||||
$this->flushUpdateValues();
|
||||
return $db->affectedRows() > 0;
|
||||
|
||||
Reference in New Issue
Block a user