fix general founding and rebellion parity

This commit is contained in:
2026-07-26 17:50:56 +00:00
parent 80a2c9502f
commit 3fb75ccf03
16 changed files with 473 additions and 221 deletions
@@ -144,7 +144,7 @@ describe('Blank Start Scenario', () => {
const FOUNDING_ARGS = {
nationName: 'NewChosen',
nationType: 'che_def',
nationType: 'che_도적',
colorType: 1,
};
@@ -218,6 +218,7 @@ describe('Blank Start Scenario', () => {
nationId: newNationId,
officerLevel: 1,
} as General;
world.getNation(newNationId)!.meta.gennum = 2;
// --- Step 3: Gen 0 performs Founding ---
// First, check name duplicate
@@ -232,7 +233,7 @@ describe('Blank Start Scenario', () => {
power: 0,
level: 1,
typeCode: 'che_def',
meta: {},
meta: { gennum: 2 },
};
world.snapshot.nations.push(duplicateNation);
const ctxDuplicate = createConstraintContext(world.getGeneral(gen0.id)!, 189, {
@@ -263,6 +264,10 @@ describe('Blank Start Scenario', () => {
commandKey: 'che_건국',
resolver: foundNationDef,
args: FOUNDING_ARGS,
context: {
currentYearMonth: 189 * 12 + 2,
initYearMonth: 189 * 12,
},
},
]);
@@ -293,7 +298,7 @@ describe('Blank Start Scenario', () => {
power: 0,
level: 0,
typeCode: 'che_def',
meta: {},
meta: { gennum: 2 },
};
world.snapshot.nations.push(newNation);
const gen0Idx = world.snapshot.generals.findIndex((g) => g.id === gen0.id);
@@ -195,6 +195,7 @@ describe('migrated general commands', () => {
expect(updatedChief.officerLevel).toBe(12);
expect(updatedLord.officerLevel).toBe(1);
expect(updatedLord.experience).toBe(700);
expect(world.getNation(nation.id)?.chiefGeneralId).toBe(chief.id);
});
it('che_선양: 제약 없는 대상에게 선양한다', async () => {
@@ -316,7 +317,7 @@ describe('migrated general commands', () => {
capitalCityId: null,
level: 0,
typeCode: 'None',
meta: {},
meta: { gennum: 2 },
});
const city = makeCity({ id: 1, nationId: 0, level: 5 });
@@ -330,7 +331,11 @@ describe('migrated general commands', () => {
generalId: lord.id,
commandKey: 'cr_건국',
resolver: foundNationSpec.createDefinition(SYSTEM_ENV),
args: { nationName: '신국', nationType: 'che_def', colorType: 1 },
args: { nationName: '신국', nationType: 'che_도적', colorType: 1 },
context: {
currentYearMonth: 201 * 12,
initYearMonth: 200 * 12,
},
},
]);