isaacscript-common
Version:
Helper functions and features for IsaacScript mods.
44 lines (43 loc) • 2.01 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.L_ROOM_SHAPE_TO_RECTANGLES = void 0;
const isaac_typescript_definitions_1 = require("isaac-typescript-definitions");
const constants_1 = require("../core/constants");
const readOnly_1 = require("../functions/readOnly");
const TWO_BY_TWO_BOTTOM_RIGHT = (0, readOnly_1.newReadonlyVector)(25, 13);
/**
* "Vector(0, 0)" corresponds to the top left tile of a room, not including the walls. (The top-left
* wall would be at "Vector(-1, -1)".)
*/
// We don't use `as const` since we need the object to be indexable by all `RoomShape`.
// eslint-disable-next-line complete/require-capital-const-assertions
exports.L_ROOM_SHAPE_TO_RECTANGLES = {
// 9
[isaac_typescript_definitions_1.RoomShape.LTL]: {
verticalTopLeft: (0, readOnly_1.newReadonlyVector)(13, 0),
verticalBottomRight: (0, readOnly_1.newReadonlyVector)(25, 13),
horizontalTopLeft: (0, readOnly_1.newReadonlyVector)(0, 7),
horizontalBottomRight: TWO_BY_TWO_BOTTOM_RIGHT,
},
// 10
[isaac_typescript_definitions_1.RoomShape.LTR]: {
verticalTopLeft: constants_1.VectorZero,
verticalBottomRight: (0, readOnly_1.newReadonlyVector)(12, 13),
horizontalTopLeft: (0, readOnly_1.newReadonlyVector)(0, 7),
horizontalBottomRight: TWO_BY_TWO_BOTTOM_RIGHT,
},
// 11
[isaac_typescript_definitions_1.RoomShape.LBL]: {
verticalTopLeft: constants_1.VectorZero,
verticalBottomRight: (0, readOnly_1.newReadonlyVector)(25, 6),
horizontalTopLeft: (0, readOnly_1.newReadonlyVector)(13, 0),
horizontalBottomRight: TWO_BY_TWO_BOTTOM_RIGHT,
},
// 12
[isaac_typescript_definitions_1.RoomShape.LBR]: {
verticalTopLeft: constants_1.VectorZero,
verticalBottomRight: (0, readOnly_1.newReadonlyVector)(25, 6),
horizontalTopLeft: constants_1.VectorZero,
horizontalBottomRight: (0, readOnly_1.newReadonlyVector)(12, 13),
},
};