Prototype Emperor Nexus battle betrayal response
This commit is contained in:
1 parent
361a1def43
commit
22a81c6f7a
10 files changed
+329
-6
No files matched your search
@@ -2155,6 +2155,14 @@ export function GameTable({
|
||||
using this power. Another faction may play Karama to cancel this
|
||||
use.
|
||||
</p>
|
||||
{g.response.kind === 'eliteStrength' &&
|
||||
g.nexusCards &&
|
||||
g.players.some((player) => player.id === g.response?.owner && player.faction === 'emperor') && (
|
||||
<p className="notice">
|
||||
Every seat may respond before the Emperor’s Sardaukar strength is locked.
|
||||
A private Emperor Nexus Betrayal may suppress it without moving starred forces.
|
||||
</p>
|
||||
)}
|
||||
{g.response.kind === 'revivalIncome' &&
|
||||
g.response.amount !== undefined && (
|
||||
<p className="notice">
|
||||
@@ -2205,8 +2213,10 @@ export function GameTable({
|
||||
: 'Cancel with Karama'}
|
||||
</Button>
|
||||
))}
|
||||
{g.responseControls?.cancelCards.length &&
|
||||
!g.responseControls.hasPassed ? (
|
||||
{(g.responseControls?.cancelCards.length ||
|
||||
(g.response.kind === 'eliteStrength' && g.nexusCards &&
|
||||
g.players.some((player) => player.id === g.response?.owner && player.faction === 'emperor'))) &&
|
||||
!g.responseControls?.hasPassed ? (
|
||||
actionButton('Allow this power', { type: 'passResponse' })
|
||||
) : (
|
||||
<p className="muted">
|
||||
|
||||
@@ -145,6 +145,19 @@ export function NexusCards({ game, act, busy }: { game: GameView; act: (action:
|
||||
)}
|
||||
</div>
|
||||
)}
|
||||
{game.nexusEmperorBetrayal && offer.card === 'emperor' && (
|
||||
<div aria-label="Emperor Nexus Betrayal" className="space-y-2">
|
||||
<h4>Emperor Betrayal · Sardaukar</h4>
|
||||
<p className="fine">
|
||||
Spend your Nexus card during this battle response to prevent the Emperor’s
|
||||
Sardaukar strength advantage. Its starred forces remain physical Sardaukar.
|
||||
</p>
|
||||
<Button className="game-action min-h-11 whitespace-normal" disabled={busy}
|
||||
onClick={() => act({ type: 'nexusEmperorBetrayal', event: game.nexusEmperorBetrayal!.event })}>
|
||||
Suppress Sardaukar with Betrayal
|
||||
</Button>
|
||||
</div>
|
||||
)}
|
||||
<NexusEmperorSecretAlly game={game} act={act} busy={busy} />
|
||||
<NexusFremenRevival game={game} act={act} busy={busy} />
|
||||
<div aria-label="Your private Nexus card" className="max-w-xl">
|
||||
|
||||
Reference in new issue
Block a user