UNPKG

isaacscript-common

Version:

Helper functions and features for IsaacScript mods.

134 lines (133 loc) 7.34 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.GRID_ENTITY_XML_MAP = void 0; const isaac_typescript_definitions_1 = require("isaac-typescript-definitions"); const ReadonlyMap_1 = require("../types/ReadonlyMap"); /** * This maps the GridEntityXMLType (i.e. the type contained in the room XML/STB file) to the * GridEntityType and the variant used by the game. */ exports.GRID_ENTITY_XML_MAP = new ReadonlyMap_1.ReadonlyMap([ // 0 [isaac_typescript_definitions_1.GridEntityXMLType.DECORATION, [isaac_typescript_definitions_1.GridEntityType.DECORATION, 0]], // 1000 [isaac_typescript_definitions_1.GridEntityXMLType.ROCK, [isaac_typescript_definitions_1.GridEntityType.ROCK, isaac_typescript_definitions_1.RockVariant.NORMAL]], // 1001 [isaac_typescript_definitions_1.GridEntityXMLType.ROCK_BOMB, [isaac_typescript_definitions_1.GridEntityType.ROCK_BOMB, 0]], // 1002 [isaac_typescript_definitions_1.GridEntityXMLType.ROCK_ALT, [isaac_typescript_definitions_1.GridEntityType.ROCK_ALT, 0]], // 1003 [isaac_typescript_definitions_1.GridEntityXMLType.ROCK_TINTED, [isaac_typescript_definitions_1.GridEntityType.ROCK_TINTED, 0]], // 1008 [isaac_typescript_definitions_1.GridEntityXMLType.ROCK_ALT_2, [isaac_typescript_definitions_1.GridEntityType.ROCK_ALT_2, 0]], // 1009 [ isaac_typescript_definitions_1.GridEntityXMLType.ROCK_EVENT, [isaac_typescript_definitions_1.GridEntityType.ROCK_ALT_2, isaac_typescript_definitions_1.RockVariant.EVENT], ], // 1010 [isaac_typescript_definitions_1.GridEntityXMLType.ROCK_SPIKED, [isaac_typescript_definitions_1.GridEntityType.ROCK_SPIKED, 0]], // 1011 [isaac_typescript_definitions_1.GridEntityXMLType.ROCK_GOLD, [isaac_typescript_definitions_1.GridEntityType.ROCK_GOLD, 0]], // 1300 [isaac_typescript_definitions_1.GridEntityXMLType.TNT, [isaac_typescript_definitions_1.GridEntityType.TNT, 0]], // GridEntityXMLType.FIREPLACE (1400) and GridEntityXMLType.RED_FIREPLACE (1410) are intentionally // not mapped; the game converts these to EntityType.FIREPLACE (33). Manually spawning the grid // version of the fireplace will result in a bugged entity. // 1490 [ isaac_typescript_definitions_1.GridEntityXMLType.POOP_RED, [isaac_typescript_definitions_1.GridEntityType.POOP, isaac_typescript_definitions_1.PoopGridEntityVariant.RED], ], // 1494 [ isaac_typescript_definitions_1.GridEntityXMLType.POOP_RAINBOW, [isaac_typescript_definitions_1.GridEntityType.POOP, isaac_typescript_definitions_1.PoopGridEntityVariant.RAINBOW], ], // 1495 [ isaac_typescript_definitions_1.GridEntityXMLType.POOP_CORNY, [isaac_typescript_definitions_1.GridEntityType.POOP, isaac_typescript_definitions_1.PoopGridEntityVariant.CORNY], ], // 1496 [ isaac_typescript_definitions_1.GridEntityXMLType.POOP_GOLDEN, [isaac_typescript_definitions_1.GridEntityType.POOP, isaac_typescript_definitions_1.PoopGridEntityVariant.GOLDEN], ], // 1497 [ isaac_typescript_definitions_1.GridEntityXMLType.POOP_BLACK, [isaac_typescript_definitions_1.GridEntityType.POOP, isaac_typescript_definitions_1.PoopGridEntityVariant.BLACK], ], // 1498 [ isaac_typescript_definitions_1.GridEntityXMLType.POOP_WHITE, [isaac_typescript_definitions_1.GridEntityType.POOP, isaac_typescript_definitions_1.PoopGridEntityVariant.WHITE], ], // GridEntityXMLType.POOP_GIGA (1499) is intentionally not mapped; the game converts this to four // different grid entities that are all next to each other: // - PoopVariant.GIGA_TOP_LEFT (7) // - PoopVariant.GIGA_TOP_RIGHT (8) // - PoopVariant.GIGA_BOTTOM_LEFT (9) // - PoopVariant.GIGA_BOTTOM_RIGHT (10) // 1500 [isaac_typescript_definitions_1.GridEntityXMLType.POOP, [isaac_typescript_definitions_1.GridEntityType.POOP, isaac_typescript_definitions_1.PoopGridEntityVariant.NORMAL]], // 1501 [ isaac_typescript_definitions_1.GridEntityXMLType.POOP_CHARMING, [isaac_typescript_definitions_1.GridEntityType.POOP, isaac_typescript_definitions_1.PoopGridEntityVariant.CHARMING], ], // 1900 [isaac_typescript_definitions_1.GridEntityXMLType.BLOCK, [isaac_typescript_definitions_1.GridEntityType.BLOCK, 0]], // 1901 [isaac_typescript_definitions_1.GridEntityXMLType.PILLAR, [isaac_typescript_definitions_1.GridEntityType.PILLAR, 0]], // 1930 [isaac_typescript_definitions_1.GridEntityXMLType.SPIKES, [isaac_typescript_definitions_1.GridEntityType.SPIKES, 0]], // 1931 [isaac_typescript_definitions_1.GridEntityXMLType.SPIKES_ON_OFF, [isaac_typescript_definitions_1.GridEntityType.SPIKES_ON_OFF, 0]], // 1940 [isaac_typescript_definitions_1.GridEntityXMLType.SPIDER_WEB, [isaac_typescript_definitions_1.GridEntityType.SPIDER_WEB, 0]], // 1999 [isaac_typescript_definitions_1.GridEntityXMLType.WALL, [isaac_typescript_definitions_1.GridEntityType.WALL, 0]], // 3000 [isaac_typescript_definitions_1.GridEntityXMLType.PIT, [isaac_typescript_definitions_1.GridEntityType.PIT, isaac_typescript_definitions_1.PitVariant.NORMAL]], // 3001 [ isaac_typescript_definitions_1.GridEntityXMLType.FISSURE_SPAWNER, [isaac_typescript_definitions_1.GridEntityType.PIT, isaac_typescript_definitions_1.PitVariant.FISSURE_SPAWNER], ], // 3009 - `GridEntityXMLType.PIT_EVENT` spawns as a normal pit with VarData equal to 1. VarData // must be manually handled by any code that uses this mapping.) [isaac_typescript_definitions_1.GridEntityXMLType.PIT_EVENT, [isaac_typescript_definitions_1.GridEntityType.PIT, isaac_typescript_definitions_1.PitVariant.NORMAL]], // 4000 [isaac_typescript_definitions_1.GridEntityXMLType.LOCK, [isaac_typescript_definitions_1.GridEntityType.LOCK, 0]], // 4500 [ isaac_typescript_definitions_1.GridEntityXMLType.PRESSURE_PLATE, [isaac_typescript_definitions_1.GridEntityType.PRESSURE_PLATE, isaac_typescript_definitions_1.PressurePlateVariant.PRESSURE_PLATE], ], // 5000 [ isaac_typescript_definitions_1.GridEntityXMLType.STATUE_DEVIL, [isaac_typescript_definitions_1.GridEntityType.STATUE, isaac_typescript_definitions_1.StatueVariant.DEVIL], ], // 5001 [ isaac_typescript_definitions_1.GridEntityXMLType.STATUE_ANGEL, [isaac_typescript_definitions_1.GridEntityType.STATUE, isaac_typescript_definitions_1.StatueVariant.ANGEL], ], // 6100 [isaac_typescript_definitions_1.GridEntityXMLType.TELEPORTER, [isaac_typescript_definitions_1.GridEntityType.TELEPORTER, 0]], // 9000 [ isaac_typescript_definitions_1.GridEntityXMLType.TRAPDOOR, [isaac_typescript_definitions_1.GridEntityType.TRAPDOOR, isaac_typescript_definitions_1.TrapdoorVariant.NORMAL], ], // 9100 [ isaac_typescript_definitions_1.GridEntityXMLType.CRAWL_SPACE, [isaac_typescript_definitions_1.GridEntityType.CRAWL_SPACE, isaac_typescript_definitions_1.CrawlSpaceVariant.NORMAL], ], // 10000 [isaac_typescript_definitions_1.GridEntityXMLType.GRAVITY, [isaac_typescript_definitions_1.GridEntityType.GRAVITY, 0]], ]);