'use client'; import { ArrowRight } from 'lucide-react'; import { Button } from '@/components/ui/button'; import { territory } from '@/game/board'; import type { Action, GameView } from '@/game/engine'; export function AdvisorPreparation({ game, act, busy, }: { game: GameView; act: (action: Action) => void; busy: boolean; }) { const offer = game.advisorPreparation; const me = game.players.find((player) => player.id === game.me); if (!offer || game.status !== 'playing' || !game.advanced || game.phase < 2 || game.phase > 5 || me?.faction !== 'beneGesserit') return null; const priorityPending = !!game.response || !!game.decision || !!game.phaseOpening; const blocked = offer.blocked || (priorityPending ? 'Finish the current response, decision or phase opening before preparing advisors.' : null); const disabled = busy || !!blocked || !!game.truthtrance || !!game.nexusTraitors?.pending; return (

Prepare advisors for battle

After Spice Blow and any Nexus, you may prepare advisors until the first actual shipment has occurred. This window includes Charity, Bidding, Revival and the opening of Shipment and Movement.

Choose a territory to turn all your advisors there into fighters, across every sector. Storm, ordinary allied occupation and fresh-advisor restrictions still apply. The existing supported Ecaz co-side composition retains its separate eligibility.

Provisional Karama policy: a canceled preparation blocks that territory until this window ends. Other eligible territories remain available. Intrusion, Nexus conversion and automatic advisor flips remain independent.

The ordinary advisor chooser during Shipment and Movement remains available. Declining that choice does not close this preparation window.

{blocked &&

{blocked}

} {!offer.territories.length && (

No advisor territory is currently eligible for preparation.

)}
{offer.territories.map((id) => ( ))}
); }