UNPKG

isaacscript-common

Version:

Helper functions and features for IsaacScript mods.

60 lines (59 loc) 6.08 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ENTITIES_WITH_ARMOR_SET = void 0; const isaac_typescript_definitions_1 = require("isaac-typescript-definitions"); const ReadonlySet_1 = require("../types/ReadonlySet"); /** * "Armor" refers to the damage scaling mechanic. The following list corresponds to the entities * that have the "shieldStrength" field in the "entities2.xml" file, with some exceptions. * (Invulnerable enemies are not included. Furthermore, Ultra Greed, Ultra Greedier, and Delirium * all have damage scaling, but do not have a corresponding "shieldStrength" field.) * * Also see: * https://bindingofisaacrebirth.fandom.com/wiki/Damage_Scaling#Entities_with_Armor_Values * * We use strings instead of a type + variant tuple so that we can have O(1) lookups. */ exports.ENTITIES_WITH_ARMOR_SET = new ReadonlySet_1.ReadonlySet([ `${isaac_typescript_definitions_1.EntityType.POOTER}.${isaac_typescript_definitions_1.PooterVariant.TAINTED_POOTER}`, // 14.2 `${isaac_typescript_definitions_1.EntityType.HIVE}.${isaac_typescript_definitions_1.HiveVariant.TAINTED_MULLIGAN}`, // 22.3 `${isaac_typescript_definitions_1.EntityType.BOOM_FLY}.${isaac_typescript_definitions_1.BoomFlyVariant.TAINTED_BOOM_FLY}`, // 25.6 `${isaac_typescript_definitions_1.EntityType.HOPPER}.${isaac_typescript_definitions_1.HopperVariant.TAINTED_HOPPER}`, // 29.3 `${isaac_typescript_definitions_1.EntityType.SPITTY}`, // 31.1 `${isaac_typescript_definitions_1.EntityType.SUCKER}.${isaac_typescript_definitions_1.SuckerVariant.TAINTED_SUCKER}`, // 61.7 `${isaac_typescript_definitions_1.EntityType.ISAAC}.${isaac_typescript_definitions_1.IsaacVariant.BLUE_BABY_HUSH}`, // 102.2 `${isaac_typescript_definitions_1.EntityType.WALL_CREEP}.${isaac_typescript_definitions_1.WallCreepVariant.TAINTED_SOY_CREEP}`, // 240.3 `${isaac_typescript_definitions_1.EntityType.ROUND_WORM}.${isaac_typescript_definitions_1.RoundWormVariant.TAINTED_ROUND_WORM}`, // 244.2 `${isaac_typescript_definitions_1.EntityType.ROUND_WORM}.${isaac_typescript_definitions_1.RoundWormVariant.TAINTED_TUBE_WORM}`, // 244.3 `${isaac_typescript_definitions_1.EntityType.MEGA_SATAN}.${isaac_typescript_definitions_1.MegaSatanVariant.MEGA_SATAN}`, // 274.0 `${isaac_typescript_definitions_1.EntityType.MEGA_SATAN}.${isaac_typescript_definitions_1.MegaSatanVariant.MEGA_SATAN_RIGHT_HAND}`, // 274.1 `${isaac_typescript_definitions_1.EntityType.MEGA_SATAN}.${isaac_typescript_definitions_1.MegaSatanVariant.MEGA_SATAN_LEFT_HAND}`, // 274.2 `${isaac_typescript_definitions_1.EntityType.MEGA_SATAN_2}.${isaac_typescript_definitions_1.MegaSatanVariant.MEGA_SATAN}`, // 275.0 `${isaac_typescript_definitions_1.EntityType.MEGA_SATAN_2}.${isaac_typescript_definitions_1.MegaSatanVariant.MEGA_SATAN_RIGHT_HAND}`, // 275.1 `${isaac_typescript_definitions_1.EntityType.MEGA_SATAN_2}.${isaac_typescript_definitions_1.MegaSatanVariant.MEGA_SATAN_LEFT_HAND}`, // 275.2 `${isaac_typescript_definitions_1.EntityType.ULTRA_GREED}.${isaac_typescript_definitions_1.UltraGreedVariant.ULTRA_GREED}`, // 406.0 `${isaac_typescript_definitions_1.EntityType.ULTRA_GREED}.${isaac_typescript_definitions_1.UltraGreedVariant.ULTRA_GREEDIER}`, // 406.1 `${isaac_typescript_definitions_1.EntityType.HUSH}.0`, // 407.0 `${isaac_typescript_definitions_1.EntityType.DELIRIUM}.0`, // 412.0 `${isaac_typescript_definitions_1.EntityType.BLOOD_PUPPY}.${isaac_typescript_definitions_1.BloodPuppyVariant.SMALL}`, // 802.0 `${isaac_typescript_definitions_1.EntityType.BLOOD_PUPPY}.${isaac_typescript_definitions_1.BloodPuppyVariant.LARGE}`, // 802.1 `${isaac_typescript_definitions_1.EntityType.SUB_HORF}.${isaac_typescript_definitions_1.SubHorfVariant.TAINTED_SUB_HORF}`, // 812.1 `${isaac_typescript_definitions_1.EntityType.FACELESS}.${isaac_typescript_definitions_1.FacelessVariant.TAINTED_FACELESS}`, // 827.1 `${isaac_typescript_definitions_1.EntityType.MOLE}.${isaac_typescript_definitions_1.MoleVariant.TAINTED_MOLE}`, // 829.1 `${isaac_typescript_definitions_1.EntityType.GUTTED_FATTY}.${isaac_typescript_definitions_1.GuttyFattyVariant.GUTTED_FATTY}`, // 831.0 `${isaac_typescript_definitions_1.EntityType.GAPER_LVL_2}.${isaac_typescript_definitions_1.Gaper2Variant.GAPER}`, // 850.0 `${isaac_typescript_definitions_1.EntityType.GAPER_LVL_2}.${isaac_typescript_definitions_1.Gaper2Variant.HORF}`, // 850.1 `${isaac_typescript_definitions_1.EntityType.GAPER_LVL_2}.${isaac_typescript_definitions_1.Gaper2Variant.GUSHER}`, // 850.2 `${isaac_typescript_definitions_1.EntityType.CHARGER_LVL_2}.${isaac_typescript_definitions_1.Charger2Variant.CHARGER}`, // 855.0 `${isaac_typescript_definitions_1.EntityType.CHARGER_LVL_2}.${isaac_typescript_definitions_1.Charger2Variant.ELLEECH}`, // 855.1 `${isaac_typescript_definitions_1.EntityType.SHADY}.0`, // 888.0 `${isaac_typescript_definitions_1.EntityType.MOTHER}.${isaac_typescript_definitions_1.MotherVariant.MOTHER_1}`, // 912.0 `${isaac_typescript_definitions_1.EntityType.MOTHER}.${isaac_typescript_definitions_1.MotherVariant.MOTHER_2}`, // 912.10 `${isaac_typescript_definitions_1.EntityType.DOGMA}.${isaac_typescript_definitions_1.DogmaVariant.TV}`, // 950.1 `${isaac_typescript_definitions_1.EntityType.DOGMA}.${isaac_typescript_definitions_1.DogmaVariant.ANGEL_PHASE_2}`, // 950.2 `${isaac_typescript_definitions_1.EntityType.BEAST}.${isaac_typescript_definitions_1.BeastVariant.BEAST}`, // 951.0 `${isaac_typescript_definitions_1.EntityType.BEAST}.${isaac_typescript_definitions_1.BeastVariant.ULTRA_FAMINE}`, // 951.10 `${isaac_typescript_definitions_1.EntityType.BEAST}.${isaac_typescript_definitions_1.BeastVariant.ULTRA_PESTILENCE}`, // 951.20 `${isaac_typescript_definitions_1.EntityType.BEAST}.${isaac_typescript_definitions_1.BeastVariant.ULTRA_WAR}`, // 951.30 `${isaac_typescript_definitions_1.EntityType.BEAST}.${isaac_typescript_definitions_1.BeastVariant.ULTRA_DEATH}`, // 951.40 ]);