isaacscript-common 6.2.0 → 6.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (96) hide show
  1. package/cachedClasses.d.ts +15 -0
  2. package/cachedClasses.lua +20 -0
  3. package/callbacks/reorderedCallbacks.d.ts +9 -0
  4. package/callbacks/reorderedCallbacks.lua +9 -0
  5. package/constants.d.ts +26 -4
  6. package/constants.lua +20 -4
  7. package/enums/CornerType.d.ts +6 -0
  8. package/enums/CornerType.lua +11 -0
  9. package/features/customStage/backdrop.d.ts +2 -0
  10. package/features/customStage/backdrop.lua +202 -0
  11. package/features/customStage/customStageConstants.d.ts +1 -0
  12. package/features/customStage/customStageConstants.lua +3 -0
  13. package/features/customStage/exports.d.ts +28 -0
  14. package/features/customStage/exports.lua +58 -1
  15. package/features/customStage/init.d.ts +2 -1
  16. package/features/customStage/init.lua +45 -9
  17. package/features/customStage/streakText.d.ts +2 -0
  18. package/features/customStage/streakText.lua +22 -0
  19. package/features/customStage/v.d.ts +10 -0
  20. package/features/customStage/v.lua +4 -0
  21. package/features/customStage/versusScreen.d.ts +3 -0
  22. package/features/customStage/versusScreen.lua +193 -0
  23. package/features/debugDisplay/debugDisplay.lua +2 -0
  24. package/features/debugDisplay/exports.d.ts +108 -0
  25. package/features/debugDisplay/exports.lua +145 -0
  26. package/features/debugDisplay/v.d.ts +2 -0
  27. package/features/debugDisplay/v.lua +9 -0
  28. package/features/deployJSONRoom.lua +6 -2
  29. package/features/extraConsoleCommands/init.lua +8 -1
  30. package/features/extraConsoleCommands/listCommands.d.ts +12 -4
  31. package/features/extraConsoleCommands/listCommands.lua +30 -15
  32. package/features/extraConsoleCommands/v.d.ts +1 -0
  33. package/features/extraConsoleCommands/v.lua +2 -1
  34. package/features/pause.d.ts +11 -0
  35. package/features/pause.lua +71 -0
  36. package/features/runNextRoom.d.ts +8 -0
  37. package/features/runNextRoom.lua +40 -0
  38. package/features/saveDataManager/exports.lua +2 -2
  39. package/features/saveDataManager/load.lua +3 -3
  40. package/features/saveDataManager/main.lua +3 -3
  41. package/features/saveDataManager/merge.lua +2 -2
  42. package/features/saveDataManager/save.lua +3 -3
  43. package/features/saveDataManager/{constants.d.ts → saveDataManagerConstants.d.ts} +0 -0
  44. package/features/saveDataManager/{constants.lua → saveDataManagerConstants.lua} +0 -0
  45. package/functions/chargeBar.lua +4 -6
  46. package/functions/color.d.ts +0 -2
  47. package/functions/color.lua +0 -4
  48. package/functions/deepCopy.lua +2 -2
  49. package/functions/direction.d.ts +1 -1
  50. package/functions/doors.d.ts +2 -2
  51. package/functions/entity.d.ts +5 -0
  52. package/functions/entity.lua +13 -0
  53. package/functions/gridEntity.d.ts +5 -0
  54. package/functions/gridEntity.lua +7 -2
  55. package/functions/kColor.d.ts +0 -2
  56. package/functions/kColor.lua +0 -4
  57. package/functions/log.lua +2 -1
  58. package/functions/playerCenter.d.ts +5 -1
  59. package/functions/playerCenter.lua +15 -8
  60. package/functions/playerIndex.d.ts +3 -0
  61. package/functions/playerIndex.lua +3 -0
  62. package/functions/roomShape.d.ts +10 -4
  63. package/functions/roomShape.lua +15 -2
  64. package/functions/sprite.d.ts +1 -1
  65. package/functions/sprite.lua +1 -1
  66. package/functions/ui.d.ts +2 -0
  67. package/functions/ui.lua +8 -0
  68. package/functions/utils.d.ts +6 -4
  69. package/functions/utils.lua +6 -4
  70. package/index.d.ts +2 -1
  71. package/index.lua +10 -0
  72. package/initFeatures.lua +7 -1
  73. package/interfaces/Corner.d.ts +6 -0
  74. package/interfaces/Corner.lua +2 -0
  75. package/interfaces/CustomStageLua.d.ts +38 -9
  76. package/objects/bossNamePNGFileNames.d.ts +5 -0
  77. package/objects/bossNamePNGFileNames.lua +108 -0
  78. package/objects/bossPortraitPNGFileNames.d.ts +5 -0
  79. package/objects/bossPortraitPNGFileNames.lua +108 -0
  80. package/objects/colors.d.ts +15 -8
  81. package/objects/colors.lua +9 -2
  82. package/objects/playerNamePNGFileNames.d.ts +5 -0
  83. package/objects/playerNamePNGFileNames.lua +49 -0
  84. package/objects/playerPortraitPNGFileNames.d.ts +5 -0
  85. package/objects/playerPortraitPNGFileNames.lua +49 -0
  86. package/objects/roomShapeCorners.d.ts +6 -0
  87. package/objects/roomShapeCorners.lua +259 -0
  88. package/objects/roomShapeToBottomRightPosition.d.ts +1 -1
  89. package/objects/roomShapeToTopLeftPosition.d.ts +1 -1
  90. package/objects/versusScreenBackgroundColors.d.ts +5 -0
  91. package/objects/versusScreenBackgroundColors.lua +38 -0
  92. package/objects/versusScreenDirtSpotColors.d.ts +5 -0
  93. package/objects/versusScreenDirtSpotColors.lua +38 -0
  94. package/package.json +2 -2
  95. package/sets/narrowRoomShapesSet.d.ts +2 -0
  96. package/sets/narrowRoomShapesSet.lua +8 -0
@@ -4,9 +4,10 @@
4
4
  * Helper function to return an array with the elements from start to end. It is inclusive at the
5
5
  * start and exclusive at the end. (The "e" stands for exclusive.)
6
6
  *
7
- * For example, `erange(1, 3)` will return `[1, 2]`.
8
- *
9
7
  * If only one argument is specified, then it will assume that the start is 0.
8
+ *
9
+ * - For example, `erange(1, 3)` will return `[1, 2]`.
10
+ * - For example, `erange(2)` will return `[0, 1]`.
10
11
  */
11
12
  export declare function erange(start: int, end?: int): int[];
12
13
  /**
@@ -24,9 +25,10 @@ export declare function hexToKColor(hexString: string, alpha: float): KColor;
24
25
  * Helper function to return an array with the elements from start to end, inclusive. (The "i"
25
26
  * stands for inclusive.)
26
27
  *
27
- * For example, `irange(1, 3)` will return `[1, 2, 3]`.
28
- *
29
28
  * If only one argument is specified, then it will assume that the start is 0.
29
+ *
30
+ * - For example, `irange(1, 3)` will return `[1, 2, 3]`.
31
+ * - For example, `irange(2)` will return `[0, 1, 2]`.
30
32
  */
31
33
  export declare function irange(start: int, end?: int): int[];
32
34
  /**
@@ -12,9 +12,10 @@ local HEX_STRING_LENGTH = 6
12
12
  --- Helper function to return an array with the elements from start to end. It is inclusive at the
13
13
  -- start and exclusive at the end. (The "e" stands for exclusive.)
14
14
  --
15
- -- For example, `erange(1, 3)` will return `[1, 2]`.
16
- --
17
15
  -- If only one argument is specified, then it will assume that the start is 0.
16
+ --
17
+ -- - For example, `erange(1, 3)` will return `[1, 2]`.
18
+ -- - For example, `erange(2)` will return `[0, 1]`.
18
19
  function ____exports.erange(self, start, ____end)
19
20
  if ____end == nil then
20
21
  ____end = start
@@ -68,9 +69,10 @@ end
68
69
  --- Helper function to return an array with the elements from start to end, inclusive. (The "i"
69
70
  -- stands for inclusive.)
70
71
  --
71
- -- For example, `irange(1, 3)` will return `[1, 2, 3]`.
72
- --
73
72
  -- If only one argument is specified, then it will assume that the start is 0.
73
+ --
74
+ -- - For example, `irange(1, 3)` will return `[1, 2, 3]`.
75
+ -- - For example, `irange(2)` will return `[0, 1, 2]`.
74
76
  function ____exports.irange(self, start, ____end)
75
77
  if ____end == nil then
76
78
  ____end = start
package/index.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  export * from "./cachedClasses";
2
2
  export { initCustomDoor, spawnCustomDoor, } from "./callbacks/postCustomDoorEnter";
3
- export { forceNewLevelCallback, forceNewRoomCallback, } from "./callbacks/reorderedCallbacks";
3
+ export { forceNewLevelCallback, forceNewRoomCallback, reorderedCallbacksSetStage, } from "./callbacks/reorderedCallbacks";
4
4
  export * from "./classes/DefaultMap";
5
5
  export * from "./classes/ModUpgraded";
6
6
  export * from "./constants";
@@ -86,6 +86,7 @@ export * from "./functions/pickups";
86
86
  export * from "./functions/pickupVariants";
87
87
  export * from "./functions/pills";
88
88
  export * from "./functions/player";
89
+ export * from "./functions/playerCenter";
89
90
  export * from "./functions/playerDataStructures";
90
91
  export * from "./functions/playerHealth";
91
92
  export * from "./functions/playerIndex";
package/index.lua CHANGED
@@ -18,8 +18,10 @@ do
18
18
  local ____reorderedCallbacks = require("callbacks.reorderedCallbacks")
19
19
  local forceNewLevelCallback = ____reorderedCallbacks.forceNewLevelCallback
20
20
  local forceNewRoomCallback = ____reorderedCallbacks.forceNewRoomCallback
21
+ local reorderedCallbacksSetStage = ____reorderedCallbacks.reorderedCallbacksSetStage
21
22
  ____exports.forceNewLevelCallback = forceNewLevelCallback
22
23
  ____exports.forceNewRoomCallback = forceNewRoomCallback
24
+ ____exports.reorderedCallbacksSetStage = reorderedCallbacksSetStage
23
25
  end
24
26
  do
25
27
  local ____export = require("classes.DefaultMap")
@@ -685,6 +687,14 @@ do
685
687
  end
686
688
  end
687
689
  end
690
+ do
691
+ local ____export = require("functions.playerCenter")
692
+ for ____exportKey, ____exportValue in pairs(____export) do
693
+ if ____exportKey ~= "default" then
694
+ ____exports[____exportKey] = ____exportValue
695
+ end
696
+ end
697
+ end
688
698
  do
689
699
  local ____export = require("functions.playerDataStructures")
690
700
  for ____exportKey, ____exportValue in pairs(____export) do
package/initFeatures.lua CHANGED
@@ -21,6 +21,8 @@ local ____fastReset = require("features.fastReset")
21
21
  local fastResetInit = ____fastReset.fastResetInit
22
22
  local ____forgottenSwitch = require("features.forgottenSwitch")
23
23
  local forgottenSwitchInit = ____forgottenSwitch.forgottenSwitchInit
24
+ local ____pause = require("features.pause")
25
+ local pauseInit = ____pause.pauseInit
24
26
  local ____persistentEntities = require("features.persistentEntities")
25
27
  local persistentEntitiesInit = ____persistentEntities.persistentEntitiesInit
26
28
  local ____playerInventory = require("features.playerInventory")
@@ -35,6 +37,8 @@ local ____roomClearFrame = require("features.roomClearFrame")
35
37
  local roomClearFrameInit = ____roomClearFrame.roomClearFrameInit
36
38
  local ____runInNFrames = require("features.runInNFrames")
37
39
  local runInNFramesInit = ____runInNFrames.runInNFramesInit
40
+ local ____runNextRoom = require("features.runNextRoom")
41
+ local runNextRoomInit = ____runNextRoom.runNextRoomInit
38
42
  local ____sirenHelpers = require("features.sirenHelpers")
39
43
  local sirenHelpersInit = ____sirenHelpers.sirenHelpersInit
40
44
  local ____stageHistory = require("features.stageHistory")
@@ -42,7 +46,7 @@ local stageHistoryInit = ____stageHistory.stageHistoryInit
42
46
  local ____taintedLazarusPlayers = require("features.taintedLazarusPlayers")
43
47
  local taintedLazarusPlayersInit = ____taintedLazarusPlayers.taintedLazarusPlayersInit
44
48
  function ____exports.initFeaturesMajor(self, mod)
45
- customStageInit(nil)
49
+ customStageInit(nil, mod)
46
50
  deployJSONRoomInit(nil, mod)
47
51
  runInNFramesInit(nil, mod)
48
52
  characterStatsInit(nil, mod)
@@ -56,12 +60,14 @@ function ____exports.initFeaturesMinor(self, mod)
56
60
  fastResetInit(nil, mod)
57
61
  forgottenSwitchInit(nil, mod)
58
62
  collectibleItemPoolTypeInit(nil, mod)
63
+ pauseInit(nil, mod)
59
64
  persistentEntitiesInit(nil, mod)
60
65
  playerInventoryInit(nil, mod)
61
66
  ponyDetectionInit(nil, mod)
62
67
  preventCollectibleRotationInit(nil, mod)
63
68
  registerHotkeyInit(nil, mod)
64
69
  roomClearFrameInit(nil, mod)
70
+ runNextRoomInit(nil, mod)
65
71
  sirenHelpersInit(nil, mod)
66
72
  stageHistoryInit(nil, mod)
67
73
  taintedLazarusPlayersInit(nil, mod)
@@ -0,0 +1,6 @@
1
+ /// <reference types="isaac-typescript-definitions" />
2
+ import { CornerType } from "../enums/CornerType";
3
+ export interface Corner {
4
+ readonly type: CornerType;
5
+ readonly position: Readonly<Vector>;
6
+ }
@@ -0,0 +1,2 @@
1
+ local ____exports = {}
2
+ return ____exports
@@ -39,6 +39,31 @@ export interface CustomStageTSConfig {
39
39
  * the walls and floor.) Mandatory.
40
40
  */
41
41
  readonly backdrop: CustomStageBackdrop;
42
+ /**
43
+ * Optional. An object representing the color to use for the background of the boss "versus"
44
+ * screen. If not specified, the color for Basement 1 will be used.
45
+ *
46
+ * For a list of the colors that correspond to the vanilla stages, see
47
+ * `versusScreenBackgroundColors.ts`.
48
+ */
49
+ readonly versusScreenBackgroundColor?: {
50
+ r: number;
51
+ g: number;
52
+ b: number;
53
+ };
54
+ /**
55
+ * Optional. An object representing the color to use for the dirt spots in the boss "versus"
56
+ * screen. (There are two dirt spots; one for the player and one for the boss.) If not specified,
57
+ * the color for Basement 1 will be used.
58
+ *
59
+ * For a list of the colors that correspond to the vanilla stages, see
60
+ * `versusScreenDirtSpotColors.ts`.
61
+ */
62
+ readonly versusScreenDirtSpotColor?: {
63
+ r: number;
64
+ g: number;
65
+ b: number;
66
+ };
42
67
  }
43
68
  interface CustomStageBackdrop {
44
69
  /**
@@ -54,25 +79,29 @@ interface CustomStageBackdrop {
54
79
  */
55
80
  suffix: string;
56
81
  /**
57
- * An array of strings that represent the graphic files for the stage's "nFloor". You must have at
58
- * least one string in this array, but you can specify more than one to randomly add extra variety
59
- * (like the vanilla stages do).
82
+ * An array of strings that represent the graphic files that are used for the floors in narrow
83
+ * rooms. (The "n" stands for "narrow").
84
+ *
85
+ * You must have at least one string in this array, but you can specify more than one to randomly
86
+ * add extra variety (like the vanilla stages do).
60
87
  *
61
88
  * For an example of this, see the vanilla file "resources/gfx/backdrop/01_basement_nfloor.png".
62
89
  */
63
90
  nFloors: string[];
64
91
  /**
65
- * An array of strings that represent the graphic files for the stage's "lFloor". You must have at
66
- * least one in the array, but you can specify more than one to randomly add extra variety (like
67
- * the vanilla stages do).
92
+ * An array of strings that represent the graphic files that are used for the floors in L rooms.
93
+ *
94
+ * You must have at least one string in this array, but you can specify more than one to randomly
95
+ * add extra variety (like the vanilla stages do).
68
96
  *
69
97
  * For an example of this, see the vanilla file "resources/gfx/backdrop/01_lbasementfloor.png".
70
98
  */
71
99
  lFloors: string[];
72
100
  /**
73
- * An array of strings that represent the graphic files for the stage's walls. You must have at
74
- * least one string in this array, but you can specify more than one to randomly add extra variety
75
- * (like the vanilla stages do).
101
+ * An array of strings that represent the graphic files for the stage's walls.
102
+ *
103
+ * You must have at least one string in this array, but you can specify more than one to randomly
104
+ * add extra variety (like the vanilla stages do).
76
105
  *
77
106
  * For an example of this, see the vanilla file "resources/gfx/backdrop/01_basement.png". (In the
78
107
  * vanilla file, they concatenate all four variations together into one PNG file. However, for the
@@ -0,0 +1,5 @@
1
+ import { BossID } from "isaac-typescript-definitions";
2
+ /** Used when rendering the "versusscreen.anm2" sprite. */
3
+ export declare const BOSS_NAME_PNG_FILE_NAMES: {
4
+ readonly [key in BossID]: string;
5
+ };
@@ -0,0 +1,108 @@
1
+ local ____exports = {}
2
+ local ____isaac_2Dtypescript_2Ddefinitions = require("isaac-typescript-definitions")
3
+ local BossID = ____isaac_2Dtypescript_2Ddefinitions.BossID
4
+ --- Used when rendering the "versusscreen.anm2" sprite.
5
+ ____exports.BOSS_NAME_PNG_FILE_NAMES = {
6
+ [BossID.MONSTRO] = "bossname_20.0_monstro.png",
7
+ [BossID.LARRY_JR] = "bossname_19.0_larryjr.png",
8
+ [BossID.CHUB] = "bossname_28.0_chub.png",
9
+ [BossID.GURDY] = "bossname_36.0_gurdy.png",
10
+ [BossID.MONSTRO_II] = "bossname_43.0_monstro2.png",
11
+ [BossID.MOM] = "bossname_45.0_mom.png",
12
+ [BossID.SCOLEX] = "bossname_62.1_scolex.png",
13
+ [BossID.MOMS_HEART] = "bossname_78.0_momsheart.png",
14
+ [BossID.FAMINE] = "bossname_63.0_famine.png",
15
+ [BossID.PESTILENCE] = "bossname_64.0_pestilence.png",
16
+ [BossID.WAR] = "bossname_65.0_war.png",
17
+ [BossID.DEATH] = "bossname_66.0_death.png",
18
+ [BossID.DUKE_OF_FLIES] = "bossname_67.0_dukeofflies.png",
19
+ [BossID.PEEP] = "bossname_68.0_peep.png",
20
+ [BossID.LOKI] = "bossname_69.0_loki.png",
21
+ [BossID.BLASTOCYST] = "bossname_74.0_blastocyst.png",
22
+ [BossID.GEMINI] = "bossname_79.0_gemini.png",
23
+ [BossID.FISTULA] = "bossname_71.0_fistula.png",
24
+ [BossID.GISH] = "bossname_43.1_gish.png",
25
+ [BossID.STEVEN] = "bossname_79.1_steven.png",
26
+ [BossID.CHAD] = "bossname_28.1_chad.png",
27
+ [BossID.HEADLESS_HORSEMAN] = "bossname_82.0_headlesshorseman.png",
28
+ [BossID.THE_FALLEN] = "bossname_81.0_thefallen.png",
29
+ [BossID.SATAN] = "bossname_84.0_satan.png",
30
+ [BossID.IT_LIVES] = "bossname_78.1_itlives.png",
31
+ [BossID.THE_HOLLOW] = "bossname_19.1_thehollow.png",
32
+ [BossID.THE_CARRION_QUEEN] = "bossname_28.2_carrionqueen.png",
33
+ [BossID.GURDY_JR] = "bossname_99.0_gurdyjr.png",
34
+ [BossID.THE_HUSK] = "bossname_67.1_thehusk.png",
35
+ [BossID.THE_BLOAT] = "bossname_68.1_bloat.png",
36
+ [BossID.LOKII] = "bossname_69.1_lokii.png",
37
+ [BossID.THE_BLIGHTED_OVUM] = "bossname_79.2_blightedovum.png",
38
+ [BossID.TERATOMA] = "bossname_71.1_teratoma.png",
39
+ [BossID.THE_WIDOW] = "bossname_100.0_widow.png",
40
+ [BossID.MASK_OF_INFAMY] = "bossname_97.0_maskofinfamy.png",
41
+ [BossID.THE_WRETCHED] = "bossname_100.1_thewretched.png",
42
+ [BossID.PIN] = "bossname_62.0_pin.png",
43
+ [BossID.CONQUEST] = "bossname_65.1_conquest.png",
44
+ [BossID.ISAAC] = "playername_01_isaac.png",
45
+ [BossID.BLUE_BABY] = "bossname_102.1_bluebaby.png",
46
+ [BossID.DADDY_LONG_LEGS] = "bossname_101.0_daddylonglegs.png",
47
+ [BossID.TRIACHNID] = "bossname_101.1_triachnid.png",
48
+ [BossID.THE_HAUNT] = "bossname_260.0_thehaunt.png",
49
+ [BossID.DINGLE] = "bossname_261.0_dingle.png",
50
+ [BossID.MEGA_MAW] = "bossname_262.0_megamaw.png",
51
+ [BossID.THE_GATE] = "bossname_263.0_megamaw2.png",
52
+ [BossID.MEGA_FATTY] = "bossname_264.0_megafatty.png",
53
+ [BossID.THE_CAGE] = "bossname_265.0_fatty2.png",
54
+ [BossID.MAMA_GURDY] = "bossname_266.0_mamagurdy.png",
55
+ [BossID.DARK_ONE] = "bossname_267.0_darkone.png",
56
+ [BossID.THE_ADVERSARY] = "bossname_268.0_darkone2.png",
57
+ [BossID.POLYCEPHALUS] = "bossname_269.0_polycephalus.png",
58
+ [BossID.MR_FRED] = "bossname_270.0_megafred.png",
59
+ [BossID.THE_LAMB] = "bossname_273.0_thelamb.png",
60
+ [BossID.MEGA_SATAN] = "bossname_274.0_megasatan.png",
61
+ [BossID.GURGLINGS] = "bossname_276.0_gurglings.png",
62
+ [BossID.THE_STAIN] = "bossname_401.0_thestain.png",
63
+ [BossID.BROWNIE] = "bossname_402.0_brownie.png",
64
+ [BossID.THE_FORSAKEN] = "bossname_403.0_theforsaken.png",
65
+ [BossID.LITTLE_HORN] = "bossname_404.0_littlehorn.png",
66
+ [BossID.RAG_MAN] = "bossname_405.0_ragman.png",
67
+ [BossID.ULTRA_GREED] = "bossname_406.0_ultragreed.png",
68
+ [BossID.HUSH] = "bossname_407.0_hush.png",
69
+ [BossID.DANGLE] = "bossname_dangle.png",
70
+ [BossID.TURDLING] = "bossname_turdlings.png",
71
+ [BossID.THE_FRAIL] = "bossname_thefrail.png",
72
+ [BossID.RAG_MEGA] = "bossname_ragmega.png",
73
+ [BossID.SISTERS_VIS] = "bossname_sisterssvis.png",
74
+ [BossID.BIG_HORN] = "bossname_bighorn.png",
75
+ [BossID.DELIRIUM] = "bossname_delirium.png",
76
+ [BossID.THE_MATRIARCH] = "bossname_matriarch.png",
77
+ [BossID.THE_PILE] = "bossname_polycephalus2.png",
78
+ [BossID.REAP_CREEP] = "bossname_reapcreep.png",
79
+ [BossID.LIL_BLUB] = "bossname_beelzeblub.png",
80
+ [BossID.WORMWOOD] = "bossname_wormwood.png",
81
+ [BossID.RAINMAKER] = "bossname_rainmaker.png",
82
+ [BossID.THE_VISAGE] = "bossname_visage.png",
83
+ [BossID.THE_SIREN] = "bossname_siren.png",
84
+ [BossID.TUFF_TWINS] = "bossname_tufftwins.png",
85
+ [BossID.THE_HERETIC] = "bossname_heretic.png",
86
+ [BossID.HORNFEL] = "bossname_hornfel.png",
87
+ [BossID.GREAT_GIDEON] = "bossname_gideon.png",
88
+ [BossID.BABY_PLUM] = "bossname_babyplum.png",
89
+ [BossID.THE_SCOURGE] = "bossname_scourge.png",
90
+ [BossID.CHIMERA] = "bossname_chimera.png",
91
+ [BossID.ROTGUT] = "bossname_rotgut.png",
92
+ [BossID.MOTHER] = "bossname_mother.png",
93
+ [BossID.MAUSOLEUM_MOM] = "bossname_45.0_mom.png",
94
+ [BossID.MAUSOLEUM_MOMS_HEART] = "bossname_78.0_momsheart.png",
95
+ [BossID.MIN_MIN] = "bossname_minmin.png",
96
+ [BossID.CLOG] = "bossname_clog.png",
97
+ [BossID.SINGE] = "bossname_singe.png",
98
+ [BossID.BUMBINO] = "bossname_bumbino.png",
99
+ [BossID.COLOSTOMIA] = "bossname_colostomia.png",
100
+ [BossID.THE_SHELL] = "bossname_shell.png",
101
+ [BossID.TURDLET] = "bossname_turdlet.png",
102
+ [BossID.RAGLICH] = "bossname_raglich.png",
103
+ [BossID.DOGMA] = "bossname_dogma.png",
104
+ [BossID.BEAST] = "bossname_dogma.png",
105
+ [BossID.HORNY_BOYS] = "bossname_hornyboys.png",
106
+ [BossID.CLUTCH] = "bossname_clutch.png"
107
+ }
108
+ return ____exports
@@ -0,0 +1,5 @@
1
+ import { BossID } from "isaac-typescript-definitions";
2
+ /** Used when rendering the "versusscreen.anm2" sprite. */
3
+ export declare const BOSS_PORTRAIT_PNG_FILE_NAMES: {
4
+ readonly [key in BossID]: string;
5
+ };
@@ -0,0 +1,108 @@
1
+ local ____exports = {}
2
+ local ____isaac_2Dtypescript_2Ddefinitions = require("isaac-typescript-definitions")
3
+ local BossID = ____isaac_2Dtypescript_2Ddefinitions.BossID
4
+ --- Used when rendering the "versusscreen.anm2" sprite.
5
+ ____exports.BOSS_PORTRAIT_PNG_FILE_NAMES = {
6
+ [BossID.MONSTRO] = "portrait_20.0_monstro.png",
7
+ [BossID.LARRY_JR] = "portrait_19.0_larryjr.png",
8
+ [BossID.CHUB] = "portrait_28.0_chub.png",
9
+ [BossID.GURDY] = "portrait_36.0_gurdy.png",
10
+ [BossID.MONSTRO_II] = "portrait_43.0_monstro2.png",
11
+ [BossID.MOM] = "portrait_45.0_mom.png",
12
+ [BossID.SCOLEX] = "portrait_62.1_scolex.png",
13
+ [BossID.MOMS_HEART] = "portrait_78.0_momsheart.png",
14
+ [BossID.FAMINE] = "portrait_63.0_famine.png",
15
+ [BossID.PESTILENCE] = "portrait_64.0_pestilence.png",
16
+ [BossID.WAR] = "portrait_65.0_war.png",
17
+ [BossID.DEATH] = "portrait_66.0_death.png",
18
+ [BossID.DUKE_OF_FLIES] = "portrait_67.0_dukeofflies.png",
19
+ [BossID.PEEP] = "portrait_68.0_peep.png",
20
+ [BossID.LOKI] = "portrait_69.0_loki.png",
21
+ [BossID.BLASTOCYST] = "portrait_74.0_blastocyst.png",
22
+ [BossID.GEMINI] = "portrait_79.0_gemini.png",
23
+ [BossID.FISTULA] = "portrait_71.0_fistula.png",
24
+ [BossID.GISH] = "portrait_43.1_gish.png",
25
+ [BossID.STEVEN] = "portrait_79.1_steven.png",
26
+ [BossID.CHAD] = "portrait_28.1_chad.png",
27
+ [BossID.HEADLESS_HORSEMAN] = "portrait_82.0_headlesshorseman.png",
28
+ [BossID.THE_FALLEN] = "portrait_81.0_thefallen.png",
29
+ [BossID.SATAN] = "portrait_84.0_satan.png",
30
+ [BossID.IT_LIVES] = "portrait_78.1_itlives.png",
31
+ [BossID.THE_HOLLOW] = "portrait_19.1_thehollow.png",
32
+ [BossID.THE_CARRION_QUEEN] = "portrait_28.2_carrionqueen.png",
33
+ [BossID.GURDY_JR] = "portrait_99.0_gurdyjr.png",
34
+ [BossID.THE_HUSK] = "portrait_67.1_thehusk.png",
35
+ [BossID.THE_BLOAT] = "portrait_68.1_bloat.png",
36
+ [BossID.LOKII] = "portrait_69.1_lokii.png",
37
+ [BossID.THE_BLIGHTED_OVUM] = "portrait_79.2_blightedovum.png",
38
+ [BossID.TERATOMA] = "portrait_71.1_teratoma.png",
39
+ [BossID.THE_WIDOW] = "portrait_100.0_widow.png",
40
+ [BossID.MASK_OF_INFAMY] = "portrait_97.0_maskofinfamy.png",
41
+ [BossID.THE_WRETCHED] = "portrait_100.1_thewretched.png",
42
+ [BossID.PIN] = "portrait_62.0_pin.png",
43
+ [BossID.CONQUEST] = "portrait_65.1_conquest.png",
44
+ [BossID.ISAAC] = "portrait_102.0_isaac.png",
45
+ [BossID.BLUE_BABY] = "portrait_102.1_bluebaby.png",
46
+ [BossID.DADDY_LONG_LEGS] = "portrait_101.0_daddylonglegs.png",
47
+ [BossID.TRIACHNID] = "portrait_101.1_triachnid.png",
48
+ [BossID.THE_HAUNT] = "portrait_260.0_thehaunt.png",
49
+ [BossID.DINGLE] = "portrait_261.0_dingle.png",
50
+ [BossID.MEGA_MAW] = "portrait_262.0_megamaw.png",
51
+ [BossID.THE_GATE] = "portrait_263.0_megamaw2.png",
52
+ [BossID.MEGA_FATTY] = "portrait_264.0_megafatty.png",
53
+ [BossID.THE_CAGE] = "portrait_265.0_fatty2.png",
54
+ [BossID.MAMA_GURDY] = "portrait_266.0_mamagurdy.png",
55
+ [BossID.DARK_ONE] = "portrait_267.0_darkone.png",
56
+ [BossID.THE_ADVERSARY] = "portrait_268.0_darkone2.png",
57
+ [BossID.POLYCEPHALUS] = "portrait_269.0_polycephalus.png",
58
+ [BossID.MR_FRED] = "portrait_270.0_megafred.png",
59
+ [BossID.THE_LAMB] = "portrait_273.0_thelamb.png",
60
+ [BossID.MEGA_SATAN] = "portrait_274.0_megasatan.png",
61
+ [BossID.GURGLINGS] = "portrait_276.0_gurglings.png",
62
+ [BossID.THE_STAIN] = "portrait_401.0_thestain.png",
63
+ [BossID.BROWNIE] = "portrait_402.0_brownie.png",
64
+ [BossID.THE_FORSAKEN] = "portrait_403.0_theforsaken.png",
65
+ [BossID.LITTLE_HORN] = "portrait_404.0_littlehorn.png",
66
+ [BossID.RAG_MAN] = "portrait_405.0_ragman.png",
67
+ [BossID.ULTRA_GREED] = "portrait_406.0_ultragreed.png",
68
+ [BossID.HUSH] = "portrait_407.0_hush.png",
69
+ [BossID.DANGLE] = "portrait_dangle.png",
70
+ [BossID.TURDLING] = "portrait_turdlings.png",
71
+ [BossID.THE_FRAIL] = "portrait_thefrail.png",
72
+ [BossID.RAG_MEGA] = "portrait_ragmega.png",
73
+ [BossID.SISTERS_VIS] = "portrait_sistersvis.png",
74
+ [BossID.BIG_HORN] = "portrait_bighorn.png",
75
+ [BossID.DELIRIUM] = "portrait_delirium.png",
76
+ [BossID.THE_MATRIARCH] = "portrait_matriarch.png",
77
+ [BossID.THE_PILE] = "portrait_269.1_polycephalus2.png",
78
+ [BossID.REAP_CREEP] = "portrait_900.0_reapcreep.png",
79
+ [BossID.LIL_BLUB] = "portrait_901.0_beelzeblub.png",
80
+ [BossID.WORMWOOD] = "portrait_902.0_wormwood.png",
81
+ [BossID.RAINMAKER] = "portrait_902.0_rainmaker.png",
82
+ [BossID.THE_VISAGE] = "portrait_903.0_visage.png",
83
+ [BossID.THE_SIREN] = "portrait_904.0_siren.png",
84
+ [BossID.TUFF_TWINS] = "portrait_19.100_tufftwins.png",
85
+ [BossID.THE_HERETIC] = "portrait_905.0_heretic.png",
86
+ [BossID.HORNFEL] = "portrait_906.0_hornfel.png",
87
+ [BossID.GREAT_GIDEON] = "portrait_907.0_gideon.png",
88
+ [BossID.BABY_PLUM] = "portrait_908.0_babyplum.png",
89
+ [BossID.THE_SCOURGE] = "portrait_909.0_scourge.png",
90
+ [BossID.CHIMERA] = "portrait_910.0_chimera.png",
91
+ [BossID.ROTGUT] = "portrait_911.0_rotgut.png",
92
+ [BossID.MOTHER] = "portrait_mother.png",
93
+ [BossID.MAUSOLEUM_MOM] = "portrait_45.0_mom.png",
94
+ [BossID.MAUSOLEUM_MOMS_HEART] = "portrait_78.0_momsheart.png",
95
+ [BossID.MIN_MIN] = "portrait_minmin.png",
96
+ [BossID.CLOG] = "portrait_clog.png",
97
+ [BossID.SINGE] = "portrait_singe.png",
98
+ [BossID.BUMBINO] = "portrait_bumbino.png",
99
+ [BossID.COLOSTOMIA] = "portrait_colostomia.png",
100
+ [BossID.THE_SHELL] = "portrait_shell.png",
101
+ [BossID.TURDLET] = "portrait_turdlet.png",
102
+ [BossID.RAGLICH] = "portrait_raglich.png",
103
+ [BossID.DOGMA] = "portrait_dogma.png",
104
+ [BossID.BEAST] = "portrait_dogma.png",
105
+ [BossID.HORNY_BOYS] = "portrait_hornyboys.png",
106
+ [BossID.CLUTCH] = "portrait_clutch.png"
107
+ }
108
+ return ____exports
@@ -3,14 +3,21 @@
3
3
  *
4
4
  * Note that if you want to further modify these colors, you should copy them first with the
5
5
  * `copyColor` function.
6
+ *
7
+ * The non-standard colors come from:
8
+ * https://htmlcolorcodes.com/color-names/
6
9
  */
7
10
  export declare const COLORS: {
8
- readonly Black: Color;
9
- readonly Red: Color;
10
- readonly Green: Color;
11
- readonly Blue: Color;
12
- readonly Yellow: Color;
13
- readonly Pink: Color;
14
- readonly Cyan: Color;
15
- readonly White: Color;
11
+ readonly Black: Readonly<Color>;
12
+ readonly Red: Readonly<Color>;
13
+ readonly Green: Readonly<Color>;
14
+ readonly Blue: Readonly<Color>;
15
+ readonly Yellow: Readonly<Color>;
16
+ readonly Pink: Readonly<Color>;
17
+ readonly Cyan: Readonly<Color>;
18
+ readonly White: Readonly<Color>;
19
+ readonly Brown: Readonly<Color>;
20
+ readonly Gray: Readonly<Color>;
21
+ readonly Orange: Readonly<Color>;
22
+ readonly Purple: Readonly<Color>;
16
23
  };
@@ -3,14 +3,21 @@ local ____exports = {}
3
3
  --
4
4
  -- Note that if you want to further modify these colors, you should copy them first with the
5
5
  -- `copyColor` function.
6
+ --
7
+ -- The non-standard colors come from:
8
+ -- https://htmlcolorcodes.com/color-names/
6
9
  ____exports.COLORS = {
7
- Black = Color(1, 1, 1),
10
+ Black = Color(0, 0, 0),
8
11
  Red = Color(1, 0, 0),
9
12
  Green = Color(0, 1, 0),
10
13
  Blue = Color(0, 0, 1),
11
14
  Yellow = Color(1, 1, 0),
12
15
  Pink = Color(1, 0, 1),
13
16
  Cyan = Color(0, 1, 1),
14
- White = Color(1, 1, 1)
17
+ White = Color(1, 1, 1),
18
+ Brown = Color(0.588, 0.294, 0),
19
+ Gray = Color(0.5, 0.5, 0.5),
20
+ Orange = Color(1, 0.647, 0),
21
+ Purple = Color(0.5, 0, 0.5)
15
22
  }
16
23
  return ____exports
@@ -0,0 +1,5 @@
1
+ import { PlayerType } from "isaac-typescript-definitions";
2
+ /** Used when rendering the "versusscreen.anm2" sprite. */
3
+ export declare const PLAYER_NAME_PNG_FILE_NAMES: {
4
+ readonly [key in PlayerType]: string | undefined;
5
+ };
@@ -0,0 +1,49 @@
1
+ local ____exports = {}
2
+ local ____isaac_2Dtypescript_2Ddefinitions = require("isaac-typescript-definitions")
3
+ local PlayerType = ____isaac_2Dtypescript_2Ddefinitions.PlayerType
4
+ --- Used when rendering the "versusscreen.anm2" sprite.
5
+ ____exports.PLAYER_NAME_PNG_FILE_NAMES = {
6
+ [PlayerType.POSSESSOR] = nil,
7
+ [PlayerType.ISAAC] = "playername_01_isaac.png",
8
+ [PlayerType.MAGDALENE] = "playername_02_magdalene.png",
9
+ [PlayerType.CAIN] = "playername_03_cain.png",
10
+ [PlayerType.JUDAS] = "playername_04_judas.png",
11
+ [PlayerType.BLUE_BABY] = "playername_06_bluebaby.png",
12
+ [PlayerType.EVE] = "playername_05_eve.png",
13
+ [PlayerType.SAMSON] = "playername_07_samson.png",
14
+ [PlayerType.AZAZEL] = "playername_08_azazel.png",
15
+ [PlayerType.LAZARUS] = "playername_10_lazarus.png",
16
+ [PlayerType.EDEN] = "playername_09_eden.png",
17
+ [PlayerType.THE_LOST] = "playername_12_thelost.png",
18
+ [PlayerType.LAZARUS_2] = "playername_10_lazarus.png",
19
+ [PlayerType.BLACK_JUDAS] = "playername_04_judas.png",
20
+ [PlayerType.LILITH] = "playername_13_lilith.png",
21
+ [PlayerType.KEEPER] = "playername_14_thekeeper.png",
22
+ [PlayerType.APOLLYON] = "playername_15_apollyon.png",
23
+ [PlayerType.THE_FORGOTTEN] = "playername_16_theforgotten.png",
24
+ [PlayerType.THE_SOUL] = "playername_16_theforgotten.png",
25
+ [PlayerType.BETHANY] = "playername_01x_bethany.png",
26
+ [PlayerType.JACOB] = "playername_02x_jacob_esau.png",
27
+ [PlayerType.ESAU] = "playername_02x_jacob_esau.png",
28
+ [PlayerType.ISAAC_B] = "playername_01_isaac.png",
29
+ [PlayerType.MAGDALENE_B] = "playername_02_magdalene.png",
30
+ [PlayerType.CAIN_B] = "playername_03_cain.png",
31
+ [PlayerType.JUDAS_B] = "playername_04_judas.png",
32
+ [PlayerType.BLUE_BABY_B] = "playername_06_bluebaby.png",
33
+ [PlayerType.EVE_B] = "playername_05_eve.png",
34
+ [PlayerType.SAMSON_B] = "playername_07_samson.png",
35
+ [PlayerType.AZAZEL_B] = "playername_08_azazel.png",
36
+ [PlayerType.LAZARUS_B] = "playername_10_lazarus.png",
37
+ [PlayerType.EDEN_B] = "playername_09_eden.png",
38
+ [PlayerType.THE_LOST_B] = "playername_12_thelost.png",
39
+ [PlayerType.LILITH_B] = "playername_13_lilith.png",
40
+ [PlayerType.KEEPER_B] = "playername_14_thekeeper.png",
41
+ [PlayerType.APOLLYON_B] = "playername_15_apollyon.png",
42
+ [PlayerType.THE_FORGOTTEN_B] = "playername_16_theforgotten.png",
43
+ [PlayerType.BETHANY_B] = "playername_01x_bethany.png",
44
+ [PlayerType.JACOB_B] = "playername_02x_jacob.png",
45
+ [PlayerType.LAZARUS_2_B] = "playername_10_lazarus.png",
46
+ [PlayerType.JACOB_2_B] = "playername_02x_jacob.png",
47
+ [PlayerType.THE_SOUL_B] = "playername_16_theforgotten.png"
48
+ }
49
+ return ____exports
@@ -0,0 +1,5 @@
1
+ import { PlayerType } from "isaac-typescript-definitions";
2
+ /** Used when rendering the "versusscreen.anm2" sprite. */
3
+ export declare const PLAYER_PORTRAIT_PNG_FILE_NAMES: {
4
+ readonly [key in PlayerType]: string | undefined;
5
+ };
@@ -0,0 +1,49 @@
1
+ local ____exports = {}
2
+ local ____isaac_2Dtypescript_2Ddefinitions = require("isaac-typescript-definitions")
3
+ local PlayerType = ____isaac_2Dtypescript_2Ddefinitions.PlayerType
4
+ --- Used when rendering the "versusscreen.anm2" sprite.
5
+ ____exports.PLAYER_PORTRAIT_PNG_FILE_NAMES = {
6
+ [PlayerType.POSSESSOR] = nil,
7
+ [PlayerType.ISAAC] = "playerportrait_isaac.png",
8
+ [PlayerType.MAGDALENE] = "playerportrait_magdalene.png",
9
+ [PlayerType.CAIN] = "playerportrait_cain.png",
10
+ [PlayerType.JUDAS] = "playerportrait_judas.png",
11
+ [PlayerType.BLUE_BABY] = "playerportrait_bluebaby.png",
12
+ [PlayerType.EVE] = "playerportrait_eve.png",
13
+ [PlayerType.SAMSON] = "playerportrait_samson.png",
14
+ [PlayerType.AZAZEL] = "playerportrait_azazel.png",
15
+ [PlayerType.LAZARUS] = "playerportrait_lazarus.png",
16
+ [PlayerType.EDEN] = "playerportrait_eden.png",
17
+ [PlayerType.THE_LOST] = "playerportrait_thelost.png",
18
+ [PlayerType.LAZARUS_2] = "playerportrait_lazarus2.png",
19
+ [PlayerType.BLACK_JUDAS] = "playerportrait_darkjudas.png",
20
+ [PlayerType.LILITH] = "playerportrait_lilith.png",
21
+ [PlayerType.KEEPER] = "playerportrait_keeper.png",
22
+ [PlayerType.APOLLYON] = "playerportrait_apollyon.png",
23
+ [PlayerType.THE_FORGOTTEN] = "playerportrait_theforgotten.png",
24
+ [PlayerType.THE_SOUL] = "playerportrait_theforgotten.png",
25
+ [PlayerType.BETHANY] = "playerportrait_bethany.png",
26
+ [PlayerType.JACOB] = "playerportrait_jacob.png",
27
+ [PlayerType.ESAU] = "playerportrait_jacob.png",
28
+ [PlayerType.ISAAC_B] = "playerportrait_isaac_b.png",
29
+ [PlayerType.MAGDALENE_B] = "playerportrait_magdalene_b.png",
30
+ [PlayerType.CAIN_B] = "playerportrait_cain_b.png",
31
+ [PlayerType.JUDAS_B] = "playerportrait_judas_b.png",
32
+ [PlayerType.BLUE_BABY_B] = "playerportrait_bluebaby_b.png",
33
+ [PlayerType.EVE_B] = "playerportrait_eve_b.png",
34
+ [PlayerType.SAMSON_B] = "playerportrait_samson_b.png",
35
+ [PlayerType.AZAZEL_B] = "playerportrait_azazel_b.png",
36
+ [PlayerType.LAZARUS_B] = "playerportrait_lazarus_b.png",
37
+ [PlayerType.EDEN_B] = "playerportrait_eden_b.png",
38
+ [PlayerType.THE_LOST_B] = "playerportrait_thelost_b.png",
39
+ [PlayerType.LILITH_B] = "playerportrait_lilith_b.png",
40
+ [PlayerType.KEEPER_B] = "playerportrait_keeper_b.png",
41
+ [PlayerType.APOLLYON_B] = "playerportrait_apollyon_b.png",
42
+ [PlayerType.THE_FORGOTTEN_B] = "playerportrait_theforgotten_b.png",
43
+ [PlayerType.BETHANY_B] = "playerportrait_bethany_b.png",
44
+ [PlayerType.JACOB_B] = "playerportrait_jacob_b.png",
45
+ [PlayerType.LAZARUS_2_B] = "playerportrait_lazarus_b_dead.png",
46
+ [PlayerType.JACOB_2_B] = "playerportrait_jacob_b.png",
47
+ [PlayerType.THE_SOUL_B] = "playerportrait_theforgotten_b.png"
48
+ }
49
+ return ____exports
@@ -0,0 +1,6 @@
1
+ import { RoomShape } from "isaac-typescript-definitions";
2
+ import { Corner } from "../interfaces/Corner";
3
+ /** The locations of the corners for each room shape. */
4
+ export declare const ROOM_SHAPE_CORNERS: {
5
+ readonly [key in RoomShape]: readonly Corner[];
6
+ };