Skip to content

LSDE Dialog Engine / RouterContext

Interface: RouterContext ​

Defined in: types.ts:382

What a ROUTER handler gets.

The same pre-evaluated cases as a condition, and no resolve: a router's exits are a tally, not a choice. Every true case has already launched its port and the continuation is already picked — then when they all held, catch otherwise — by the time a handler could speak. There is nothing left to override, which is also why no handler is required for the type.

Extends ​

Properties ​

actors ​

actors: Card[]

Defined in: types.ts:316

Every card the block cites, resolved through the export's cards table, in file order.

Inherited from ​

BaseBlockContext.actors


cases ​

cases: RuntimeConditionCase[]

Defined in: types.ts:384

The block's cases, each with its port and its pre-evaluated result. ALL of them ran.


character ​

character: Card | undefined

Defined in: types.ts:314

The actor onResolveCharacter() picked for this block, or undefined.

A block lists a CAST in actors — card ids, in an order LSDE deliberately refuses to give a meaning to. Whether the first one speaks, whether they all do, whether the rest are simply present is the game's call, so the engine hands the whole list to onResolveCharacter() and keeps whatever comes back. It does not elect a first one, the way v1 did.

Inherited from ​

BaseBlockContext.character


emotion ​

emotion: Card | undefined

Defined in: types.ts:324

The emotion of the block, resolved through cards — the TONE of the line, not of a speaker.

In v1 each character carried its own emotion, which meant writing the same feeling twice for two actors saying one sentence, and being free to desynchronise them by accident. A block is one line and one line has one tone; actors says who may carry it.

Inherited from ​

BaseBlockContext.emotion


intensity ​

intensity: number | undefined

Defined in: types.ts:326

How strongly, when the writer set an emotion. Passed through untouched.

Inherited from ​

BaseBlockContext.intensity


preventGlobalHandler ​

preventGlobalHandler: () => void

Defined in: types.ts:328

Stop the global (Tier 1) handler from running after this scene handler.

Returns ​

void

Inherited from ​

BaseBlockContext.preventGlobalHandler