기존에 작성해두었던 EventHandler 시스템으로 하드코드 이벤트 이동 - 매달 - 보급선 설정 - 전쟁 단기 수입 설정 - 부대장 부여 - 1월 - 유산 포인트 계산 - 도시 인구 변화 - 수입 - 관직 제한 해제 - 재난 - 상인 - 새해 알림 - 특기 부여 - 4월 - 관직 제한 해제 - 재난 - 7월 - 유산 포인트 계산 - 도시 인구 변화 - 수입 - 관직 제한 해제 - 재난 - 상인 - 10월 - 관직 제한 해제 - 재난 - 천통 시 - 유산 포인트 계산 Reviewed-on: https://storage.hided.net/gitea/devsam/core/pulls/230
32 lines
908 B
PHP
32 lines
908 B
PHP
<?php
|
|
|
|
namespace sammo\Event\Action;
|
|
|
|
use sammo\ActionLogger;
|
|
use sammo\DB;
|
|
|
|
class NewYear extends \sammo\Event\Action
|
|
{
|
|
public function run(array $env)
|
|
{
|
|
$year = $env['year'];
|
|
$month = $env['month'];
|
|
|
|
$logger = new ActionLogger(0, 0, $year, $month, false);
|
|
$logger->pushGlobalActionLog("<C>{$year}</>년이 되었습니다.");
|
|
$logger->pushGeneralHistoryLog("<S>모두들 즐거운 게임 하고 계신가요? ^^ <Y>매너 있는 플레이</> 부탁드리고, 게임보단 <L>건강이 먼저</>란점, 잊지 마세요!</>", $logger::NOTICE_YEAR_MONTH);
|
|
$logger->flush(); //TODO: globalAction류는 전역에서 관리하는것이 좋을 듯.
|
|
|
|
$db = DB::db();
|
|
|
|
//나이와 호봉 증가
|
|
$db->update('general', [
|
|
'age' => $db->sqleval('age+1'),
|
|
], true);
|
|
|
|
$db->update('general', [
|
|
'belong' => $db->sqleval('belong+1')
|
|
], 'nation != 0');
|
|
}
|
|
}
|