Reference · Rockets, variants, parts and the fit check
BUILDERSconstant
The kit's builders, for a ship that needs a module of its own size: a 40 m container, an 80 m tank, a 165 m ring, a 24 m truss bay. Each takes the numbers a module is made from and gives a KitModule with the same collars,
detail and cutaway; the ship adds it to its list by putting it in its own table, or by shipParts.
Import it
import { BUILDERS } from "@johnmorrisdotca/uchusen-rockets";
Definition
const BUILDERS: { readonly container: (id: string, name: string, L: number, cold: boolean, mass: number) => KitModule; readonly tank: (id: string, name: string, R: number, L: number, top: CollarClass, bottom: CollarClass, mass: number, propellant: number, note: string) => KitModule; readonly habitatRing: (id: string, name: string, major: number, mass: number) => KitModule; readonly habitatDrum: (id: string, name: string, R: number, L: number, mass: number, farm: boolean) => KitModule; readonly truss: (id: string, name: string, L: number, cls: CollarClass, mass: number) => KitModule; readonly radiatorArray: (id: string, name: string, deployed: boolean, mass: number) => KitModule; readonly engineCluster: (count: 1 | 3 | 4 | 7, id: string, name: string, mass: number) => KitModule; readonly adapter: (id: string, from: CollarClass, to: CollarClass, mass: number) => KitModule; readonly dockingNode: (id: string, name: string, count: number, cls: CollarClass, mass: number) => KitModule; readonly bay: (o: { id: string; name: string; note: string; R: number; L: number; mass: number; furniture: Furniture; digits: string; glass: "glass" | "plant" | "none"; livery: LiveryName; spacing?: number; slot?: string; extra?: (ctx: Ctx, y0: number, y1: number) => Piece[]; }) => KitModule; readonly missionPod: (kind: "survey" | "medical") => KitModule; } = { container, tank, habitatRing, habitatDrum, truss, radiatorArray, engineCluster, adapter, dockingNode, bay, missionPod } as const
Members
| Name | Type | Description |
|---|---|---|
container | (id: string, name: string, L: number, cold: boolean, mass: number) => KitModule | |
tank | (id: string, name: string, R: number, L: number, top: CollarClass, bottom: CollarClass, mass: number, propellant: number, note: string) => KitModule | |
habitatRing | (id: string, name: string, major: number, mass: number) => KitModule | |
habitatDrum | (id: string, name: string, R: number, L: number, mass: number, farm: boolean) => KitModule | |
truss | (id: string, name: string, L: number, cls: CollarClass, mass: number) => KitModule | |
radiatorArray | (id: string, name: string, deployed: boolean, mass: number) => KitModule | |
engineCluster | (count: 1 | 3 | 4 | 7, id: string, name: string, mass: number) => KitModule | |
adapter | (id: string, from: CollarClass, to: CollarClass, mass: number) => KitModule | |
dockingNode | (id: string, name: string, count: number, cls: CollarClass, mass: number) => KitModule | |
bay | (o: { id: string; name: string; note: string; R: number; L: number; mass: number; furniture: Furniture; digits: string; glass: "glass" | "plant" | "none"; livery: LiveryName; spacing?: number; slot?: string; extra?: (ctx: Ctx, y0: number, y1: number) => Piece[]; }) => KitModule | |
missionPod | (kind: "survey" | "medical") => KitModule |
Examples
import { BUILDERS } from "@johnmorrisdotca/uchusen-rockets";
const container40 = BUILDERS.container("my-container-40", "Container, 40 m", 40, false, 400);
console.log(container40.length, container40.pieces({ detail: 0.4 }).length > 100);40 trueWhat it prints (run when this page was built)