INNER CODE UNIT · JavaScript
createInitialState
Sisyphe42/ReignsAgent · packages/core/src/index.js:22
export function createInitialState(options = {}) {
const factions = normalizeFactions(options.factions);
return {
turn: options.turn ?? 0,
factions,
variables: cloneJsonSafe(options.variables ?? {}, "Initial variables"),
tags: cloneJsonSafe(options.tags ?? {}, "Initial tags"),
activeHooks: normalizeActiveHooks(options.activeHooks ?? [], "Initial state"),
cardWeights: cloneJsonSafe(options.cardWeights ?? {}, "Initial card weights"),
factionScales: normalizeFactionScales(options.factionScales),
dismissedCards: new Set(options.dismissedCards ?? options.dismissedCardIds ?? []),
currentCardId: options.currentCardId ?? null,
gameOver: evaluateGameOver(factions)
};
}
export function createRuntime(options = {}) {