기존에 작성해두었던 EventHandler 시스템으로 하드코드 이벤트 이동
- 매달
- 보급선 설정
- 전쟁 단기 수입 설정
- 부대장 부여
- 1월
- 유산 포인트 계산
- 도시 인구 변화
- 수입
- 관직 제한 해제
- 재난
- 상인
- 새해 알림
- 특기 부여
- 4월
- 관직 제한 해제
- 재난
- 7월
- 유산 포인트 계산
- 도시 인구 변화
- 수입
- 관직 제한 해제
- 재난
- 상인
- 10월
- 관직 제한 해제
- 재난
- 천통 시
- 유산 포인트 계산
Reviewed-on: https://storage.hided.net/gitea/devsam/core/pulls/230
- 경매장을 모든 입찰 기록이 남는 새로운 경매장 로직으로 변경
- ng_auction, ng_auction_bid
- DTO 사용
- 상회입찰 시 개인메시지로 알림
- 기존의 '배경에서 조용히 이루어지는' 유니크 입찰을 공개된 유니크 경매장으로 변경
- 종료 기간 명시
- 종료 기간에 가까워질때 입찰하면 자동 연장
- 최대 연장기간 있음
- 유니크 제한인 경우 24턴 연장
- 중원정세에서 '보물수배'로 알림
Reviewed-on: https://storage.hided.net/gitea/devsam/core/pulls/221
- 기존의 랜덤 코드는 deprecated 처리
- 서버 시작 시 랜덤하게 정해진 hiddenSeed를 활용
- 랜덤 생성 단위
- 월 실행
- 사령턴 실행 결과
- 커맨드 실행 결과
- 작위 보상
- 부대장 생성
- 유니크 획득 시도
- 설문 조사
- 장수 생성
- NPC국 생성, NPC 생성, NPC의 토너먼트 베팅
- 전투
- 도시 점령
- 자율 행동 선택
- 랜덤 턴 변경
- 거래장, 토너먼트 등 구 랜덤 코드를 이용하는 잔여 코드 있음
- array에 +=를 phan 알아듣기 쉽게 array_merge로
- Util::array_get이 더 이상 필요없으므로 null coalescing
- array로 tuple류를 반환하는 함수에 index를 포함하도록 변경
- php intelephense에게는 현재 무효
- getPost 일부 값에 int 지정
- 아이템에 id property를 없앴으므로 관련 코드 제거
- enum은 array key로 사용할 수 없으므로 \Ds\Map으로 변경
- KakaoKey PhanRedefineClass 에러 우회
- 토너먼트 베팅을 betting 테이블 대신 Betting 모듈을 이용하는 형태로 변경
- 이전 토너먼트 베팅 기록이 남음
- 현재 이전 토너먼트 기록을 볼 수는 없음
- 베팅에 API/Betting/Bet 을 이용
- 토너먼트, 베팅 페이지를 Betting 모듈에 맞게 임시 조정
- 이전 버전과의 호환성을 위해 betting table과 betting 테이블에 초기값을 추가하는 로직은 남김
- 이후 0.30이 되었을 때 제거
Reviewed-on: https://storage.hided.net/gitea/devsam/core/pulls/218