Support native Advanced and No-Field movement promises
This commit is contained in:
1 parent
2ae2b984c0
commit
724eabf99c
20 files changed
+762
-30
No files matched your search
@@ -33,9 +33,13 @@ export function MovementPromises({ game, act, busy }: { game: GameView; act: (ac
|
||||
: next?.type === 'card' && card?.effect === 'ghola' ? `Play Ghola to return ${amount} ${amount === 1 ? 'force' : 'forces'} to reserves for the required movement`
|
||||
: next?.type === 'card' && next.mode === 'choam' ? 'Play Kulon to extend the required movement'
|
||||
: next?.type === 'prepareAdvisors' ? `Prepare advisors in ${destinationLabel} for the required movement`
|
||||
: next?.type === 'revealNoField' ? 'Reveal your No-Field to prepare physical forces for the required movement'
|
||||
: next?.type === 'card' ? 'Play Hajr to prepare the required movement'
|
||||
: next?.type === 'ship' && next.noField ? `Ship a concealed No-Field to ${destinationLabel}, sector ${sector}, before the required movement`
|
||||
: next?.type === 'ship' ? `Ship ${amount} forces to ${destinationLabel}, sector ${sector}, before the required movement`
|
||||
: next?.type === 'endMovement' ? 'Finish movement while honoring No'
|
||||
: next?.noField && !amount ? `Move your concealed No-Field to ${destinationLabel}, sector ${sector}, to prepare the required movement`
|
||||
: next?.noField ? `Move ${amount} physical forces with your No-Field to ${destinationLabel}, sector ${sector}`
|
||||
: `${next?.movementCard ? 'Use Ornithopter and move' : 'Move'} ${amount} forces to ${destinationLabel}, sector ${sector}`;
|
||||
return <section className="notice space-y-3" aria-label="Your ground-movement promises">
|
||||
<h4>Your ground-movement promises</h4>
|
||||
|
||||
@@ -350,8 +350,9 @@ export function Truthtrance({
|
||||
<MovementClaimFields id={`${factId}-movement`} value={movement} onChange={setMovement} />
|
||||
<p className="fine">One ground movement of the chosen physical minimum, from now until the respondent’s Movement turn ends. Shipment, HMS relocation and Ambassador relocation do not count. Owned Hajr, Ornithopter, native Kulon and paid Box recovery of a known discard can prepare a later move. No stays binding after earlier nonmatching moves.</p>
|
||||
{g.phase < 5 && <p className="notice">Movement comes later this round. Keep the forces, spice and cards needed by your answer; available Charity or Revival may prepare the route. Current auction commitments reserve their actual funding. Current preparation appears when it is available.</p>}
|
||||
{g.advanced && <p className="fine">Classic Advanced movement counts physical forces, including each elite once. Hajr remains available only immediately after a completed movement and its required arrival decisions.</p>}
|
||||
{!g.truthMovementTargets.includes(target) && <p className="notice">Choose a supported Basic respondent this round or a classic Advanced respondent during Movement, and finish pending decisions. Advanced expansion and optional-module movement promises remain unfinished.</p>}
|
||||
{g.advanced && <p className="fine">Advanced movement counts physical forces, including each elite once. Hajr remains available only immediately after a completed movement and its required arrival decisions.</p>}
|
||||
<p className="fine">An owned No-Field may prepare a route through its normal shipment, movement or voluntary reveal. The concealed marker does not count toward the promised physical minimum; revelation uses only available reserves.</p>
|
||||
{!g.truthMovementTargets.includes(target) && <p className="notice">Choose a supported Basic respondent this round or an Advanced respondent with declared native families during Movement, and finish pending decisions. Optional modules and earlier Advanced movement forecasts remain unfinished.</p>}
|
||||
<p className="notice" aria-label="Public movement question preview">{truthQuestionText(question, leaderName, locationName)}</p>
|
||||
</>
|
||||
) : kind === 'shipment' || kind === 'mixedShipment' ? (
|
||||
|
||||
Reference in new issue
Block a user