/** * THE KING'S HARBOUR * * The Capital's port (2026-09-21, James: "the capital city should have a * large port coming out of it"). The city's north side is the edge of the * world, so the sea is to the east: everything east of HARBOUR_SEA_X is the * Sound, open water to the map's edge, with a shore curving back east to * the edge south of the harbour. Between the moat and the water sits a * walled harbour ward on the city's own axis: the East Gate's bridge lands * on the Harbour Road, which runs the Royal Way's rows straight to the * quay and on out along the Royal Pier. Warehouses face the quay either * side of the road with cranes at their doors, the harbour master's house * and the customs house face the road, an inn and a chandler behind them, * and a breakwater runs out from the north tower to a lighthouse at the * harbour mouth. Ships lie alongside the piers with gangplanks down; the * harbour master sells passage on Branson's chart (travel.ts). * * World tiles, absolute like the capital's. Backend builder: * capitalHarbour.ts. Assets: the quay grammar in pierDeck.ts (`quay` * base), the lighthouse and harbour tower in capitalMonuments.ts, the * crane in capitalFabric.ts (yardprop `crane`). */ /** The ward: the moat's east bank to the quay edge, the wall rows included. */ export declare const HARBOUR_MIN_X: number; /** The quay's edge tile: the last land, the water begins on the next. */ export declare const HARBOUR_MAX_X = 819; export declare const HARBOUR_SEA_X: number; export declare const HARBOUR_NORTH_Z = 108; export declare const HARBOUR_SOUTH_Z = 212; /** Everything the ward and the bay own, for the sweep and the levelling. */ export declare const HARBOUR_WORKS: { readonly minX: number; readonly maxX: 927; readonly minZ: 64; readonly maxZ: 296; }; /** The ward's floor is the city's; the quay stands two heights over the water. */ export declare const HARBOUR_FLOOR_H = 2; export declare const HARBOUR_WATER_H = 0; export declare const HARBOUR_SHORE_H = 1; /** The Harbour Road: the Way's rows, kerbed, from the bridge foot to the quay. */ export declare const HARBOUR_ROAD_Z: number; export declare const HARBOUR_ROAD_HALF_W = 2; export declare const HARBOUR_ROAD_KERB_HALF_W = 3; /** The quay strip along the water, six wide, flags. */ export declare const HARBOUR_QUAY_MIN_X = 814; /** Wall towers every this many tiles along the harbour walls. */ export declare const HARBOUR_BASTION_EVERY = 16; /** The drums at the water ends of the walls stand on the quay's corners. */ export declare const HARBOUR_TOWER_X = 818; type Rect = { readonly minX: number; readonly maxX: number; readonly minZ: number; readonly maxZ: number; }; /** * The piers: stone, terrain at the ward's height with the quay grammar on * their edges. The Royal Pier is on the road's rows; the two smaller piers * flank it. */ export declare const HARBOUR_ROYAL_PIER: { readonly minX: number; readonly maxX: 853; readonly minZ: number; readonly maxZ: number; }; export declare const HARBOUR_NORTH_PIER: { readonly minX: number; readonly maxX: 845; readonly minZ: 128; readonly maxZ: 131; }; export declare const HARBOUR_SOUTH_PIER: { readonly minX: number; readonly maxX: 845; readonly minZ: 189; readonly maxZ: 192; }; export declare const HARBOUR_PIERS: ReadonlyArray; /** The breakwater from the north tower, three wide, and its head with the lighthouse on it. */ export declare const HARBOUR_MOLE: { readonly minX: number; readonly maxX: 861; readonly minZ: 108; readonly maxZ: number; }; export declare const HARBOUR_MOLE_HEAD: { readonly minX: 862; readonly maxX: 866; readonly minZ: 106; readonly maxZ: 112; }; export declare const HARBOUR_LIGHTHOUSE: { readonly x: 864; readonly z: 109; }; /** * The ships. `style` is the ship kind and its bow's heading (face90 is bow * east, face270 bow west, face0 bow south); `hull` is the water the hull * lies over, blocked so nothing paths under a keel; `plank` is the pier * tile the gangplank leaves from and the side it goes over. */ export declare const HARBOUR_SHIPS: ReadonlyArray<{ id: string; x: number; z: number; style: string; hull: Rect; plank: { x: number; z: number; side: 'north' | 'south' | 'east' | 'west'; }; }>; /** * The buildings. Warehouses face the quay (door east), the master's house * and the customs house face the road, the inn and the chandler stand * behind them on the road too. Styles as the capital's landmarks. */ export declare const HARBOUR_LANDMARKS: ReadonlyArray<{ id: string; kind: 'stonehouse' | 'warehouse'; style: string; x: number; z: number; board?: string; }>; /** * The two open yards that replaced the blind terraces (the Capital redesign, * 2026-09-25: no blind buildings anywhere James can see from the East Gate). * Both run from the moat's bank to the warehouses' backs (x 771-797). * * The Net Yard, inside the north wall: net drying frames, fish racks, rope * coils, a boat on trestles, barrels. */ export declare const HARBOUR_NET_YARD: { readonly minX: number; readonly maxX: number; readonly minZ: number; readonly maxZ: number; }; /** * The Fish Market, inside the south wall: six striped stalls in two rows * facing each other across an aisle (the three on the quay stay too), fish * racks and ice crates round them. The Fishmonger's tile is the aisle's * middle (phase 2). */ export declare const HARBOUR_FISH_MARKET: { readonly minX: number; readonly maxX: number; readonly minZ: number; readonly maxZ: number; }; export declare const HARBOUR_FISH_MARKET_KEEPER: { readonly x: number; readonly z: number; }; /** The six stalls: `marketstall fish-`, each counter three tiles along x, fronting the aisle. */ export declare const HARBOUR_FISH_MARKET_STALLS: ReadonlyArray<{ x: number; z: number; facing: 'n' | 's'; style: string; }>; /** Treadwheel cranes on the quay edge, at the warehouse doors. */ export declare const HARBOUR_CRANES: ReadonlyArray<{ x: number; z: number; }>; /** The fish market on the south quay: stalls with their backs to the water. */ export declare const HARBOUR_FISH_STALLS: ReadonlyArray<{ x: number; z: number; }>; /** The sailings board at the Royal Pier's root. */ export declare const HARBOUR_BOARD: { readonly x: 817; readonly z: 154; }; /** * Marlow stands out on the Royal Pier at the crimson ship's gangplank, not * back on the quay: the man who sells you a passage is beside the ship that * carries it (James, 2026-09-22). The board still meets you at the root. */ export declare const HARBOUR_MASTER: { readonly x: 837; readonly z: 158; readonly faceX: 838; readonly faceZ: 154; }; /** Where a sailing puts you ashore: the Royal Pier beside the first gangplank. */ export declare const HARBOUR_LANDING: { readonly x: 836; readonly z: number; }; /** The name on the road and the map. */ export declare const HARBOUR_NAME = "The King's Harbour"; /** The wall rows and the tiles inward that the wall pieces fill. */ export declare function onHarbourWall(x: number, z: number): boolean; export declare function inHarbourWard(x: number, z: number): boolean; /** Inside the walls: where the buildings and yards are. */ export declare function inHarbourInterior(x: number, z: number): boolean; export declare function onHarbourRoad(x: number, z: number): boolean; export declare function onHarbourQuay(x: number, z: number): boolean; export declare function onHarbourPier(x: number, z: number): boolean; export declare function onHarbourMole(x: number, z: number): boolean; /** * Every stone deck standing over the water: the piers, the breakwater, and the Capital Aquarium's bridge and Grand Quay * (capitalAquarium.ts), so the harbour lays them at the quay's height with its quay edges and its paving. */ export declare function onHarbourDeck(x: number, z: number): boolean; /** * The Sound's shore south of the harbour: the first water column on a row. * Straight along the quay and the ward, then bending east below the south * tower to reach the map's edge, wandering a tile or two so it is a coast * and not a ruler. */ export declare const HARBOUR_SHORE_BEND_Z = 240; export declare function harbourShoreX(z: number): number; /** The Sound: sea from the shore to the map's edge, the north rows included, the decks excepted. */ export declare function inHarbourSea(x: number, z: number): boolean; /** Laid stone: the ward inside its walls, the piers and the breakwater (see the frontend's LaidPaving). */ export declare function inHarbourPaving(x: number, z: number): boolean; export {}; //# sourceMappingURL=harbour.d.ts.map