Support Moritani assassination of captured and foreign-ghola targets
Retain printed native identity and valid original custody while projecting only uniform potential bounty before commitment. Resolve living/dead targets once, clear selected capture/concealment and retain ordinary Ghola return custody. Selected concealed-outcome disclosure is explicitly provisional. Verified: 14 affected offline files100/100, types/lint and production build; six actual choice/gameplay/GameTable SSR journeys and twelve profile paths. Native capture source47 actions; actual paid Ghola prefix140 actions followed by explicit conserved seven-action battle. No saved-room/D1/reset/restart or deployment operation. Runtime-only driver fixes reused unchanged passed checks.
This commit is contained in:
1 parent
61828150b9
commit
eff668b202
25 files changed
+1041
-57
No files matched your search
@@ -160,7 +160,7 @@ for (const hasKarama of [false, true]) void test(`the normal Guild Suk rescue an
|
||||
if (d?.kind !== 'moritaniAssassinate') throw Error('Expected original loss choice');
|
||||
const action: Action = { type: 'decision', event: d.event, card: f.target };
|
||||
const privateMenu = viewGame(pending, f.moritani).moritaniAssassinate!.pending!.cards;
|
||||
assert.equal(privateMenu.find(c => c.card === f.target)!.bounty, 3);
|
||||
assert.equal(privateMenu.find(c => c.card === f.target)!.potentialBounty, 3);
|
||||
assert.equal(privateMenu.some(c => c.card === f.opponentLeader), false);
|
||||
reject(pending, f.opponent, action); reject(pending, f.moritani, { ...action, event: `${d.event}:stale` });
|
||||
reject(pending, f.moritani, { ...action, card: f.opponentLeader });
|
||||
|
||||
Reference in new issue
Block a user