adding classification and division yard updates, train collisions, engine and car updates, turnout improvements.
This commit is contained in:
+13
-2
@@ -202,8 +202,19 @@ export type CrewTray = {
|
||||
/** null while a local crew is switching without a train card. */
|
||||
trainNumber: number | null;
|
||||
trainIsExtra: boolean;
|
||||
/** Which end the engine occupies (§A.3). */
|
||||
engineFront: boolean;
|
||||
/**
|
||||
* WHERE THE ENGINE SITS IN THE TRAY, as an index into `consist`.
|
||||
*
|
||||
* A Crew Tray is an engine plus its Rolling Stock, and the engine may be PULLING (index 0, ahead
|
||||
* of everything), PUSHING (index `consist.length`, behind everything) or somewhere in the middle
|
||||
* doing both at once. That last case is why this is an index and not the boolean it replaced —
|
||||
* `engineFront` was written in three places and read in none, so the engine had a position the
|
||||
* game recorded and never used.
|
||||
*
|
||||
* The engine is NOT one of the `consist` entries: §8.2 counts the consist as Rolling Stock, and
|
||||
* the four-car limit (§A.4) is a limit on cars, not on the locomotive hauling them.
|
||||
*/
|
||||
engineAt: number;
|
||||
/** ORDERED, left-to-right. Max 4 including any caboose (§A.4). */
|
||||
consist: RollingStock[];
|
||||
direction: Direction;
|
||||
|
||||
Reference in New Issue
Block a user