@my-swu/simulator-client / GameEvent
Type Alias: GameEvent
GameEvent =
"setupCompleted"| {playerJoined: {seat:Seat; }; } | {playerDeckSubmitted: {seat:Seat; }; } | {playerReady: {seat:Seat; }; } | {setupStarted: {initiativeChooser:Seat; }; } | {initiativeAssigned: {controller:Seat; }; } | {openingHandDrawn: {count:number;seat:Seat; }; } | {mulliganResolved: {seat:Seat;tookMulligan:boolean; }; } | {openingResourcesChosen: {count:number;seat:Seat; }; } | {cardPlayed: {arena:CardArena;cardId:number;playedWithSmuggle:boolean;seat:Seat;unitId:number; }; } | {eventPlayed: {cardId:number;inputProvenance?:EventPlayInputProvenance|null;playedWithSmuggle:boolean;seat:Seat;text?:EffectTextRefsView|null; }; } | {upgradePlayed: {attachedUnitId:AttachHostSchema;cardId:number;playedWithSmuggle:boolean;seat:Seat;upgradeId:number; }; } | {leaderDeployed: {arena:CardArena;cardId:number;seat:Seat;unitId:number; }; } | {leaderDeployedAsPilot: {attachedUnitId:number;cardId:number;seat:Seat;upgradeId:number; }; } | {attackDeclared: {attackerCardId:number;attackerId:number;seat:Seat;target:AttackTarget;targetCardId:number; }; } | {unitDamaged: {amount:number;isCombat?:boolean;unitId:number; }; } | {unitHealed: {amount:number;unitId:number; }; } | {shieldAdded: {amount:number;unitId:number; }; } | {shieldRemoved: {amount:number;unitId:number; }; } | {baseDamaged: {amount:number;isCombat?:boolean;seat:Seat; }; } | {baseHealed: {amount:number;seat:Seat; }; } | {baseHealPrevented: {amount:number;preventedByCardId?:number|null;preventedByUnitId?:number|null;seat:Seat; }; } | {unitExhausted: {unitId:number; }; } | {unitReadied: {unitId:number; }; } | {cardsRevealed: {cardIds:number[];seat:Seat; }; } | {cardsChosenFromDiscard: {cardIds:number[];seat:Seat; }; } | {namedCardChosen: {name:string;seat:Seat; }; } | {namedTraitChosen: {seat:Seat;trait_name:string; }; } | {chosenAspect: {aspect:string;seat:Seat; }; } | {cardsDiscardedFromHand: {cardIds:number[];random:boolean;seat:Seat; }; } | {tokenUnitCreated: {arena:CardArena;cardId:number;seat:Seat;unitId:number; }; } | {creditTokensCreated: {amount:number;seat:Seat; }; } | {forceTokenCreated: {seat:Seat; }; } | {actionAbilityUsed: {abilityLabel:string;seat:Seat;source:ActionAbilitySource;sourceCardId?:number|null;targets?:AbilityTarget[];text?:EffectTextRefsView|null; }; } | {triggeredAbilityResolved: {abilityLabel:string;seat:Seat;sourceCardId:number;sourceUnitId?:number|null;text?:EffectTextRefsView|null;window:AbilityWindow; }; } | {forceUsed: {seat:Seat; }; } | {experienceTokensAdded: {amount:number;unitId:number; }; } | {advantageTokensAdded: {amount:number;unitId:number; }; } | {weaknessTokensAdded: {amount:number;unitId:number; }; } | {unitCaptured: {captorUnitId:number;capturedUnitId:number;cardId:number; }; } | {capturedUnitRescued: {arena:CardArena;cardId:number;guardingBase?:Seat|null;guardingUnitId:number;rescuedUnitId:number;seat:Seat; }; } | {unitReturnedToHand: {cardId:number;seat:Seat;unitId:number; }; } | {unitReturnedToDeck: {cardId:number;placement:DeckPlacement;seat:Seat;unitId:number; }; } | {unitDefeated: {cardId:number;defeatCause:UnitDefeatCause;seat:Seat;unitId:number; }; } | {leaderReturnedToBase: {cardId:number;seat:Seat; }; } | {upgradeDefeated: {attachedUnitId:AttachHostSchema;cardId:number;seat:Seat;upgradeId:number; }; } | {actionPhaseStarted: {activePlayer:Seat;roundNumber:number; }; } | {initiativeTaken: {seat:Seat; }; } | {counterTaken: {counter:TwinSunsCounter;seat:Seat; }; } | {counterReturned: {counter:TwinSunsCounter; }; } | {turnPassed: {seat:Seat;source:TurnPassSource; }; } | {regroupStarted: {roundNumber:number; }; } | {cardsDrawn: {count:number;seat:Seat;source:CardDrawSource; }; } | {cardsDiscardedFromDeck: {cardIds:number[];seat:Seat; }; } | {emptyDeckDamage: {amount:number;seat:Seat; }; } | {regroupResourceChosen: {resourced:boolean;seat:Seat; }; } | {cardsReadied: {count:number;seat:Seat; }; } | {sideboardUpdated: {mainDeckCount:number;seat:Seat;sideboardCount:number; }; } | {nextGameReady: {seat:Seat; }; } | {nextGameUnready: {seat:Seat; }; } | {nextGameStarted: {gameNumber:number; }; } | {seriesExtensionRequested: {bestOfGames:number;seat:Seat; }; } | {seriesExtensionDeclined: {seat:Seat; }; } | {seriesExtended: {bestOfGames:number; }; } | {rematchRequested: {seat:Seat; }; } | {rematchDeclined: {seat:Seat; }; } | {trilogyDeckBanned: {opponentDeckIndex:number;seat:Seat; }; } | {trilogyDeckSelected: {deckIndex:number;seat:Seat; }; } | {matchEnded: {reason:MatchEndReason;winner?:Seat|null; }; } | {playerEliminated: {reason:MatchEndReason;seat:Seat; }; } | {undoApplied: {seat:Seat;undoneSeat:Seat; }; } | {undoRequested: {reasons:UndoRequestReason[];requestId:string;seat:Seat;undoneSeat:Seat; }; } | {undoApproved: {requestId:string;seat:Seat; }; } | {undoDeclined: {requestId:string;seat:Seat; }; } | {undoCancelled: {reason:UndoCancelReason;requestId:string;seat:Seat; }; }
Defined in: packages/ts-sdk/src/generated/types/common.ts:1966
Example:
import type { GameEvent } from '@my-swu/simulator-client'
const playerReadyEvent = { playerReady: { seat: 'one' } } satisfies GameEvent
console.log(playerReadyEvent)