- 유산 포인트 - 기수 뒤로도 누적되는 포인트 - 생존, 최대 임관년 수, 최대 연속 내정 성공, 병종 상성 우위 횟수, 전투 횟수, 계략 성공 횟수, 천통 기여(규모 상승, 천통 수뇌, 천통 군주), 숙련도, 토너먼트, 베팅 당첨 - 유산 관리 페이지 제공 - 태수국 - 181년 1월에 자동 생성되는 u장수국 - 시간이 지나면 사실상 자동 소멸 - 유저국과는 4칸 거리, 서로는 2칸 거리 - 이 시스템으로 인해 m장 거병 차단 - NPC 원조시 불가침 - 1년 세수만큼 받은 경우 24개월 불가침 제안 - 최소 6개월 - 불가침을 받지 않고 추가 원조한 경우 계속해서 기간 상승 - 단, 불가침 수락 전에 선포를 할 수 있음 Reviewed-on: https://storage.hided.net/gitea/devsam/core/pulls/187 Co-authored-by: hide_d <hided62@gmail.com> Co-committed-by: hide_d <hided62@gmail.com>
35 lines
905 B
TypeScript
35 lines
905 B
TypeScript
type ErrType<T> = { new(msg?: string): T }
|
|
type Nullable<T> = T | null | undefined
|
|
|
|
export class RuntimeError extends Error {
|
|
public name = 'RuntimeError';
|
|
constructor(public message: string = '') {
|
|
super(message);
|
|
}
|
|
toString(): string {
|
|
if (this.message) {
|
|
return this.name + ': ' + this.message;
|
|
}
|
|
else {
|
|
return this.name;
|
|
}
|
|
}
|
|
}
|
|
|
|
export class NotNullExpected extends RuntimeError {
|
|
public name = 'NotNullExpected';
|
|
}
|
|
|
|
export function unwrap<T>(result: Nullable<T>): T {
|
|
if (result === null || result === undefined) {
|
|
throw new NotNullExpected();
|
|
}
|
|
return result;
|
|
}
|
|
|
|
export function unwrap_err<T, ErrT extends Error>(result: Nullable<T>, errType: ErrType<ErrT>, errMsg?: string): T {
|
|
if (result === null || result === undefined) {
|
|
throw new errType(errMsg);
|
|
}
|
|
return result;
|
|
} |