/** * RIVERSEND HALT (T1 slice 1, 2026-10-14; plan `.cursor/task-plans/2026-10-14-t1-west-a-riversend-emberdeep.md`): the second * inland place of the Western Kingdoms, a riverside trading post and halt for levels 15-25, free. Stop 3 on the heartland sheet * (design ids `western-heartland-1-overview`, `western-heartland-3-riversend-halt`); the sheets are proposals, so only their * names and geography are used, never their pixels. * * Where: directly NORTH of Brindlecross, reached ON FOOT by the North Road (Brindlecross's road ends at (1872, 1010); the halt * carries it on over the river's old stone bridge and up through the market square to the North Path). The land is the * blockout's flat grass at height 3 (westernKingdoms.ts), so the river is the only negative ground. * * The train circuit v2 is FROZEN (a new stop is circuit v3): this "halt" is platform, canopy, ticket hut and water tower * dressing only, a spur the railway's surveyors laid and no train stops at yet. The signs say so plainly. * * Layout (the box is x 1796-1935, z 870-1029): the North Road comes up from Brindlecross and crosses the river on the old stone * bridge at z 1004; the market square sits north of the bridge on the road (the stalls, the well); the halt's platform lies * west of the road (x 1800-1846, z 919-936) with its spur track; the fisher docks line the west bank of the river's N-S reach * to the east; the old mill stands by the river's upper reach with its wheel; the West Track (to Emberdeep Ruins) leaves the * box's west edge at z 900; the North Path leaves its north edge at x 1878. Woods of hazel and alder stand south-west and * north-west of the square, the riverbank's stones lie along the river's south bend. */ import type { LanternWakeBox, LanternWakePiece, LanternWakePoint } from './lanternWake.js'; export declare const RIVERSEND_NAME = "Riversend Halt"; export declare const RIVERSEND_ID = "riversend"; /** The halt's discovery zone and ground box. */ export declare const RIVERSEND_BOX: LanternWakeBox; /** The old stone bridge on the North Road: deck 5 along the road (north-south), 3 across. */ export declare const RIVERSEND_BRIDGE: { readonly id: "rv-bridge"; readonly model: "hbfordbridge"; readonly facing: "s"; readonly x: 1872; readonly z: 1004; }; /** * The river's centre line (world polyline): from the waterfall at the box's north-east it runs south along x ~1912, bends west * across the North Road under the old bridge and leaves by the box's west side. Five tiles wide (`half` 2 either side of the line). */ export declare const RIVERSEND_RIVER: { pts: readonly LanternWakePoint[]; half: number; }; /** The three road rows across the river under the bridge's deck, laid as sand (walkable). */ export declare function inRiversendFordRows(x: number, z: number): boolean; /** The roads (world polylines, width in tiles), laid as Path. */ export declare const RIVERSEND_PATHS: ReadonlyArray<{ id: string; w: number; pts: readonly LanternWakePoint[]; }>; /** The market square (a plain of beaten earth the roads meet on), laid as Path. */ export declare const RIVERSEND_SQUARE: LanternWakeBox; /** The halt's platform (laid as Stone) and its spur track's bed (laid as Dirt, `westtrack` pieces on it). */ export declare const RIVERSEND_PLATFORM: LanternWakeBox; export declare const RIVERSEND_TRACK_BED: LanternWakeBox; /** The woods that stand for "the nearby forest" (hazel, alder, ash, with a little pine) and the riverbank's stones. */ export declare const RIVERSEND_WOODS: ReadonlyArray; /** The river's south bank east of the North Road, where the stones lie for the quest. */ export declare const RIVERSEND_STONE_BANK: LanternWakeBox; /** * The pieces: the kit's models (stand-ins for the sheet's buildings; no Blender in this slice set, listed in NEXT_STEPS). * North of a road they face south onto it, south of it north. */ export declare const RIVERSEND_PIECES: readonly LanternWakePiece[]; /** The halt's signs (the placard signpost): the bridge, the square, the halt's spur, the West Track and the North Path. */ export declare const RIVERSEND_SIGNS: ReadonlyArray<{ id: string; x: number; z: number; text: string; }>; /** Standable tiles (admin teleports, smokes): one for each place. */ export declare const RIVERSEND_STAND: { readonly x: 1872; readonly z: 957; }; export declare const RIVERSEND_STANDS: { readonly square: { readonly x: 1872; readonly z: 957; }; readonly bridge: { readonly x: 1872; readonly z: 1013; }; readonly halt: { readonly x: 1832; readonly z: 925; }; readonly docks: { readonly x: 1900; readonly z: 975; }; readonly mill: { readonly x: 1892; readonly z: 909; }; readonly westTrack: { readonly x: 1806; readonly z: 901; }; readonly northPath: { readonly x: 1878; readonly z: 880; }; readonly woods: { readonly x: 1818; readonly z: 976; }; readonly stoneBank: { readonly x: 1890; readonly z: 1013; }; }; /** The discovery zone (types expandedContracts.ts INSERTED_DISCOVERY_ZONES, ahead of the land's own). */ export declare const RIVERSEND_DISCOVERY_ZONE: { minX: number; maxX: number; minZ: number; maxZ: number; id: string; label: string; coordinateFrame: "world"; }; export declare function inRiversendBox(x: number, z: number, pad?: number): boolean; //# sourceMappingURL=riversendHalt.d.ts.map