isaacscript-common 1.2.159 → 1.2.162

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 (85) hide show
  1. package/dist/callbacks/customRevive.lua +2 -2
  2. package/dist/callbacks/itemPickup.lua +4 -4
  3. package/dist/callbacks/postCustomDoorEnter.d.ts +2 -1
  4. package/dist/callbacks/postCustomDoorEnter.lua +34 -17
  5. package/dist/callbacks/postGridEntityCollision.lua +2 -2
  6. package/dist/callbacks/postPlayerChangeHealth.lua +6 -6
  7. package/dist/callbacks/postPlayerChangeType.lua +4 -4
  8. package/dist/callbacks/postPurchase.lua +4 -4
  9. package/dist/callbacks/postSlotRender.lua +2 -2
  10. package/dist/callbacks/postTransformation.lua +4 -4
  11. package/dist/callbacks/postTrinketBreak.lua +4 -4
  12. package/dist/callbacks/preBerserkDeath.lua +2 -2
  13. package/dist/callbacks/roomClearChange.d.ts +1 -0
  14. package/dist/callbacks/roomClearChange.lua +39 -0
  15. package/dist/callbacks/subscriptions/postPlayerChangeHealth.d.ts +1 -1
  16. package/dist/callbacks/subscriptions/roomClearChange.d.ts +1 -0
  17. package/dist/callbacks/subscriptions/roomClearChange.lua +18 -0
  18. package/dist/classes/DefaultMap.d.ts +74 -0
  19. package/dist/classes/DefaultMap.lua +85 -0
  20. package/dist/classes/ModUpgraded.d.ts +19 -0
  21. package/dist/classes/ModUpgraded.lua +73 -0
  22. package/dist/enums/CardType.d.ts +40 -0
  23. package/dist/enums/CardType.lua +20 -0
  24. package/dist/enums/CollectiblePedestalType.d.ts +38 -0
  25. package/dist/enums/CollectiblePedestalType.lua +36 -0
  26. package/dist/enums/HealthType.d.ts +16 -0
  27. package/dist/enums/HealthType.lua +22 -0
  28. package/dist/enums/ModCallbacksCustom.d.ts +61 -0
  29. package/dist/enums/ModCallbacksCustom.lua +108 -0
  30. package/dist/enums/PillEffectClass.d.ts +17 -0
  31. package/dist/enums/PillEffectClass.lua +16 -0
  32. package/dist/enums/PillEffectType.d.ts +16 -0
  33. package/dist/enums/PillEffectType.lua +14 -0
  34. package/dist/enums/PocketItemType.d.ts +8 -0
  35. package/dist/enums/PocketItemType.lua +16 -0
  36. package/dist/enums/private/SaveDataKeys.d.ts +6 -0
  37. package/dist/enums/private/SaveDataKeys.lua +8 -0
  38. package/dist/enums/private/SerializationBrand.d.ts +15 -0
  39. package/dist/enums/private/SerializationBrand.lua +24 -0
  40. package/dist/features/deployJSONRoom.lua +2 -2
  41. package/dist/features/extraConsoleCommands/commands.lua +2 -2
  42. package/dist/features/isPonyActive.lua +2 -2
  43. package/dist/features/playerInventory.lua +4 -4
  44. package/dist/features/saveDataManager/exports.d.ts +6 -2
  45. package/dist/features/saveDataManager/exports.lua +4 -4
  46. package/dist/features/saveDataManager/main.lua +4 -4
  47. package/dist/features/saveDataManager/merge.lua +3 -3
  48. package/dist/functions/cards.d.ts +1 -1
  49. package/dist/functions/cards.lua +2 -2
  50. package/dist/functions/collectibles.d.ts +1 -1
  51. package/dist/functions/deepCopy.lua +4 -4
  52. package/dist/functions/deepCopyTests.lua +2 -2
  53. package/dist/functions/map.d.ts +1 -1
  54. package/dist/functions/pills.d.ts +2 -2
  55. package/dist/functions/player.d.ts +1 -1
  56. package/dist/functions/player.lua +2 -2
  57. package/dist/functions/playerDataStructures.d.ts +1 -1
  58. package/dist/functions/playerHealth.d.ts +1 -1
  59. package/dist/functions/playerHealth.lua +1 -1
  60. package/dist/functions/pocketItems.lua +1 -1
  61. package/dist/functions/transformations.lua +2 -2
  62. package/dist/functions/trinkets.d.ts +12 -0
  63. package/dist/functions/trinkets.lua +15 -0
  64. package/dist/index.d.ts +10 -8
  65. package/dist/index.lua +73 -57
  66. package/dist/objects/callbackRegisterFunctions.d.ts +1 -1
  67. package/dist/objects/callbackRegisterFunctions.lua +10 -1
  68. package/dist/objects/cardTypes.d.ts +1 -1
  69. package/dist/objects/cardTypes.lua +1 -1
  70. package/dist/objects/directionNames.d.ts +4 -0
  71. package/dist/objects/directionNames.lua +10 -0
  72. package/dist/objects/pillEffectClasses.d.ts +1 -1
  73. package/dist/objects/pillEffectClasses.lua +1 -1
  74. package/dist/objects/pillEffectTypes.d.ts +1 -1
  75. package/dist/objects/pillEffectTypes.lua +1 -1
  76. package/dist/types/AddCallbackParametersCustom.d.ts +11 -1
  77. package/dist/types/AddCallbackParametersCustom.lua +1 -1
  78. package/dist/types/ModCallbacksCustom.d.ts +43 -40
  79. package/dist/types/ModCallbacksCustom.lua +46 -40
  80. package/dist/types/PocketItemDescription.d.ts +1 -1
  81. package/dist/types/private/SaveData.d.ts +0 -6
  82. package/dist/types/private/SaveData.lua +0 -5
  83. package/dist/upgradeMod.d.ts +1 -1
  84. package/dist/upgradeMod.lua +8 -2
  85. package/package.json +1 -1
@@ -0,0 +1,40 @@
1
+ /** Matches the "type" attribute in the "pocketitems.xml" file. */
2
+ export declare enum CardType {
3
+ /** No valid card will have this type. */
4
+ NULL = 0,
5
+ /** A normal card with a brown back, like "0 - The Fool". */
6
+ TAROT = 1,
7
+ /** A playing card with a red back, like 2 of Clubs. This includes the Queen of Hearts. */
8
+ SUIT = 2,
9
+ /**
10
+ * A left-facing rune like Hagalaz, a right-facing rune like Ansuz, a Black Rune, a Blank Rune, a
11
+ * a Rune Shard, or a "soul" rune like Soul of Isaac.
12
+ */
13
+ RUNE = 3,
14
+ /**
15
+ * A card that does not fall into any of the other categories, like a Chaos Card (42).
16
+ *
17
+ * Most of these have unique backs.
18
+ *
19
+ * 4 cards share the Magic the Gathering back:
20
+ * - Chaos Card (42)
21
+ * - Huge Growth (52)
22
+ * - Ancient Recall (53)
23
+ * - Era Walk (54)
24
+ *
25
+ * 3 cards have a red playing card back:
26
+ * - Rules Card (44)
27
+ * - Suicide King (46)
28
+ * - ? Card (48)
29
+ */
30
+ SPECIAL = 4,
31
+ /** A Dice Shard, an Emergency Contact, or a Cracked Key. */
32
+ OBJECT = 5,
33
+ /** A reverse tarot card with a reddish-brown back, like "0 - The Fool?". */
34
+ TAROT_REVERSE = 6,
35
+ /**
36
+ * This is not a real `CardType`. Due to limitations in the API, getting the real type of modded
37
+ * cards is not possible, so this value is returned instead.
38
+ */
39
+ MODDED = 7
40
+ }
@@ -0,0 +1,20 @@
1
+ --[[ Generated with https://github.com/TypeScriptToLua/TypeScriptToLua ]]
2
+ local ____exports = {}
3
+ ____exports.CardType = CardType or ({})
4
+ ____exports.CardType.NULL = 0
5
+ ____exports.CardType[____exports.CardType.NULL] = "NULL"
6
+ ____exports.CardType.TAROT = 1
7
+ ____exports.CardType[____exports.CardType.TAROT] = "TAROT"
8
+ ____exports.CardType.SUIT = 2
9
+ ____exports.CardType[____exports.CardType.SUIT] = "SUIT"
10
+ ____exports.CardType.RUNE = 3
11
+ ____exports.CardType[____exports.CardType.RUNE] = "RUNE"
12
+ ____exports.CardType.SPECIAL = 4
13
+ ____exports.CardType[____exports.CardType.SPECIAL] = "SPECIAL"
14
+ ____exports.CardType.OBJECT = 5
15
+ ____exports.CardType[____exports.CardType.OBJECT] = "OBJECT"
16
+ ____exports.CardType.TAROT_REVERSE = 6
17
+ ____exports.CardType[____exports.CardType.TAROT_REVERSE] = "TAROT_REVERSE"
18
+ ____exports.CardType.MODDED = 7
19
+ ____exports.CardType[____exports.CardType.MODDED] = "MODDED"
20
+ return ____exports
@@ -0,0 +1,38 @@
1
+ /** Corresponds to the overlay frame number in "005.100_collectible.anm2". */
2
+ export declare enum CollectiblePedestalType {
3
+ /**
4
+ * Used for e.g. shop collectibles. In the "005.100_collectible.anm2" file, this is represented by
5
+ * the final frame.
6
+ */
7
+ NONE = -1,
8
+ /** The normal grey pedestal. */
9
+ NORMAL = 0,
10
+ /** From SlotVariant.FORTUNE_TELLING_MACHINE (3) */
11
+ FORTUNE_TELLING_MACHINE = 1,
12
+ /** From SlotVariant.BLOOD_DONATION_MACHINE (2) */
13
+ BLOOD_DONATION_MACHINE = 2,
14
+ /** From SlotVariant.SLOT_MACHINE (1) */
15
+ SLOT_MACHINE = 3,
16
+ /** From PickupVariant.LOCKEDCHEST (60) */
17
+ LOCKEDCHEST = 4,
18
+ /** From PickupVariant.PICKUP_REDCHEST (360) */
19
+ REDCHEST = 5,
20
+ /** From PickupVariant.PICKUP_BOMBCHEST (51) */
21
+ BOMBCHEST = 6,
22
+ /** From PickupVariant.PICKUP_SPIKEDCHEST (52) */
23
+ SPIKEDCHEST = 7,
24
+ /** From PickupVariant.PICKUP_ETERNALCHEST (53) */
25
+ ETERNALCHEST = 8,
26
+ /** From SlotVariant.MOMS_DRESSING_TABLE (12) */
27
+ MOMS_DRESSING_TABLE = 9,
28
+ /** From PickupVariant.PICKUP_CHEST (50) */
29
+ CHEST = 10,
30
+ /** From PickupVariant.PICKUP_MOMSCHEST (390) */
31
+ MOMSCHEST = 11,
32
+ /** From PickupVariant.PICKUP_OLDCHEST (55) */
33
+ OLDCHEST = 12,
34
+ /** From PickupVariant.PICKUP_WOODENCHEST (56) */
35
+ WOODENCHEST = 13,
36
+ /** From PickupVariant.PICKUP_MEGACHEST (57) */
37
+ MEGACHEST = 14
38
+ }
@@ -0,0 +1,36 @@
1
+ --[[ Generated with https://github.com/TypeScriptToLua/TypeScriptToLua ]]
2
+ local ____exports = {}
3
+ ____exports.CollectiblePedestalType = CollectiblePedestalType or ({})
4
+ ____exports.CollectiblePedestalType.NONE = -1
5
+ ____exports.CollectiblePedestalType[____exports.CollectiblePedestalType.NONE] = "NONE"
6
+ ____exports.CollectiblePedestalType.NORMAL = 0
7
+ ____exports.CollectiblePedestalType[____exports.CollectiblePedestalType.NORMAL] = "NORMAL"
8
+ ____exports.CollectiblePedestalType.FORTUNE_TELLING_MACHINE = 1
9
+ ____exports.CollectiblePedestalType[____exports.CollectiblePedestalType.FORTUNE_TELLING_MACHINE] = "FORTUNE_TELLING_MACHINE"
10
+ ____exports.CollectiblePedestalType.BLOOD_DONATION_MACHINE = 2
11
+ ____exports.CollectiblePedestalType[____exports.CollectiblePedestalType.BLOOD_DONATION_MACHINE] = "BLOOD_DONATION_MACHINE"
12
+ ____exports.CollectiblePedestalType.SLOT_MACHINE = 3
13
+ ____exports.CollectiblePedestalType[____exports.CollectiblePedestalType.SLOT_MACHINE] = "SLOT_MACHINE"
14
+ ____exports.CollectiblePedestalType.LOCKEDCHEST = 4
15
+ ____exports.CollectiblePedestalType[____exports.CollectiblePedestalType.LOCKEDCHEST] = "LOCKEDCHEST"
16
+ ____exports.CollectiblePedestalType.REDCHEST = 5
17
+ ____exports.CollectiblePedestalType[____exports.CollectiblePedestalType.REDCHEST] = "REDCHEST"
18
+ ____exports.CollectiblePedestalType.BOMBCHEST = 6
19
+ ____exports.CollectiblePedestalType[____exports.CollectiblePedestalType.BOMBCHEST] = "BOMBCHEST"
20
+ ____exports.CollectiblePedestalType.SPIKEDCHEST = 7
21
+ ____exports.CollectiblePedestalType[____exports.CollectiblePedestalType.SPIKEDCHEST] = "SPIKEDCHEST"
22
+ ____exports.CollectiblePedestalType.ETERNALCHEST = 8
23
+ ____exports.CollectiblePedestalType[____exports.CollectiblePedestalType.ETERNALCHEST] = "ETERNALCHEST"
24
+ ____exports.CollectiblePedestalType.MOMS_DRESSING_TABLE = 9
25
+ ____exports.CollectiblePedestalType[____exports.CollectiblePedestalType.MOMS_DRESSING_TABLE] = "MOMS_DRESSING_TABLE"
26
+ ____exports.CollectiblePedestalType.CHEST = 10
27
+ ____exports.CollectiblePedestalType[____exports.CollectiblePedestalType.CHEST] = "CHEST"
28
+ ____exports.CollectiblePedestalType.MOMSCHEST = 11
29
+ ____exports.CollectiblePedestalType[____exports.CollectiblePedestalType.MOMSCHEST] = "MOMSCHEST"
30
+ ____exports.CollectiblePedestalType.OLDCHEST = 12
31
+ ____exports.CollectiblePedestalType[____exports.CollectiblePedestalType.OLDCHEST] = "OLDCHEST"
32
+ ____exports.CollectiblePedestalType.WOODENCHEST = 13
33
+ ____exports.CollectiblePedestalType[____exports.CollectiblePedestalType.WOODENCHEST] = "WOODENCHEST"
34
+ ____exports.CollectiblePedestalType.MEGACHEST = 14
35
+ ____exports.CollectiblePedestalType[____exports.CollectiblePedestalType.MEGACHEST] = "MEGACHEST"
36
+ return ____exports
@@ -0,0 +1,16 @@
1
+ /**
2
+ * This represents the type of health that is either given or taken away from a player. Note that
3
+ * we cannot use the HeartSubType enum for this purpose this since it has no value for broken hearts
4
+ * or max hearts.
5
+ */
6
+ export declare enum HealthType {
7
+ RED = 0,
8
+ SOUL = 1,
9
+ ETERNAL = 2,
10
+ BLACK = 3,
11
+ GOLDEN = 4,
12
+ BONE = 5,
13
+ ROTTEN = 6,
14
+ BROKEN = 7,
15
+ MAX_HEARTS = 8
16
+ }
@@ -0,0 +1,22 @@
1
+ --[[ Generated with https://github.com/TypeScriptToLua/TypeScriptToLua ]]
2
+ local ____exports = {}
3
+ ____exports.HealthType = HealthType or ({})
4
+ ____exports.HealthType.RED = 0
5
+ ____exports.HealthType[____exports.HealthType.RED] = "RED"
6
+ ____exports.HealthType.SOUL = 1
7
+ ____exports.HealthType[____exports.HealthType.SOUL] = "SOUL"
8
+ ____exports.HealthType.ETERNAL = 2
9
+ ____exports.HealthType[____exports.HealthType.ETERNAL] = "ETERNAL"
10
+ ____exports.HealthType.BLACK = 3
11
+ ____exports.HealthType[____exports.HealthType.BLACK] = "BLACK"
12
+ ____exports.HealthType.GOLDEN = 4
13
+ ____exports.HealthType[____exports.HealthType.GOLDEN] = "GOLDEN"
14
+ ____exports.HealthType.BONE = 5
15
+ ____exports.HealthType[____exports.HealthType.BONE] = "BONE"
16
+ ____exports.HealthType.ROTTEN = 6
17
+ ____exports.HealthType[____exports.HealthType.ROTTEN] = "ROTTEN"
18
+ ____exports.HealthType.BROKEN = 7
19
+ ____exports.HealthType[____exports.HealthType.BROKEN] = "BROKEN"
20
+ ____exports.HealthType.MAX_HEARTS = 8
21
+ ____exports.HealthType[____exports.HealthType.MAX_HEARTS] = "MAX_HEARTS"
22
+ return ____exports
@@ -0,0 +1,61 @@
1
+ /**
2
+ * These are the custom callbacks available for use once the mod object has been upgraded.
3
+ * Also see the [[`upgradeMod`]] function.
4
+ *
5
+ * For a better listing of all custom callbacks, check out the
6
+ * [Function Signatures](https://isaacscript.github.io/docs/function-signatures#custom-callbacks).
7
+ */
8
+ export declare enum ModCallbacksCustom {
9
+ MC_POST_GAME_STARTED_REORDERED = 0,
10
+ MC_POST_NEW_LEVEL_REORDERED = 1,
11
+ MC_POST_NEW_ROOM_REORDERED = 2,
12
+ MC_POST_PLAYER_INIT_REORDERED = 3,
13
+ MC_POST_PEFFECT_UPDATE_REORDERED = 4,
14
+ MC_POST_PLAYER_UPDATE_REORDERED = 5,
15
+ MC_POST_PLAYER_RENDER_REORDERED = 6,
16
+ MC_POST_NEW_ROOM_EARLY = 7,
17
+ MC_PRE_NEW_LEVEL = 8,
18
+ MC_ROOM_CLEAR_CHANGE = 9,
19
+ MC_POST_PLAYER_INIT_LATE = 10,
20
+ MC_POST_TEAR_INIT_LATE = 11,
21
+ MC_POST_TEAR_INIT_VERY_LATE = 12,
22
+ MC_POST_FAMILIAR_INIT_LATE = 13,
23
+ MC_POST_BOMB_INIT_LATE = 14,
24
+ MC_POST_PICKUP_INIT_LATE = 15,
25
+ MC_POST_LASER_INIT_LATE = 16,
26
+ MC_POST_KNIFE_INIT_LATE = 17,
27
+ MC_POST_PROJECTILE_INIT_LATE = 18,
28
+ MC_POST_NPC_INIT_LATE = 19,
29
+ MC_POST_EFFECT_INIT_LATE = 20,
30
+ MC_POST_PICKUP_COLLECT = 21,
31
+ MC_PRE_ITEM_PICKUP = 22,
32
+ MC_POST_ITEM_PICKUP = 23,
33
+ MC_POST_PLAYER_CHANGE_TYPE = 24,
34
+ MC_POST_PLAYER_CHANGE_HEALTH = 25,
35
+ MC_POST_PLAYER_FATAL_DAMAGE = 26,
36
+ MC_PRE_BERSERK_DEATH = 27,
37
+ MC_PRE_CUSTOM_REVIVE = 28,
38
+ MC_POST_CUSTOM_REVIVE = 29,
39
+ MC_POST_FLIP = 30,
40
+ MC_POST_FIRST_FLIP = 31,
41
+ MC_POST_ESAU_JR = 32,
42
+ MC_POST_FIRST_ESAU_JR = 33,
43
+ MC_POST_TRANSFORMATION = 34,
44
+ MC_POST_PURCHASE = 35,
45
+ MC_POST_SACRIFICE = 36,
46
+ MC_POST_CURSED_TELEPORT = 37,
47
+ MC_POST_TRINKET_BREAK = 38,
48
+ MC_POST_SLOT_INIT = 39,
49
+ MC_POST_SLOT_UPDATE = 40,
50
+ MC_POST_SLOT_RENDER = 41,
51
+ MC_POST_SLOT_ANIMATION_CHANGED = 42,
52
+ MC_POST_SLOT_DESTROYED = 43,
53
+ MC_POST_GRID_ENTITY_INIT = 44,
54
+ MC_POST_GRID_ENTITY_UPDATE = 45,
55
+ MC_POST_GRID_ENTITY_REMOVE = 46,
56
+ MC_POST_GRID_ENTITY_STATE_CHANGE = 47,
57
+ MC_POST_GRID_ENTITY_BROKEN = 48,
58
+ MC_POST_GRID_ENTITY_COLLISION = 49,
59
+ MC_POST_BONE_SWING = 50,
60
+ MC_POST_CUSTOM_DOOR_ENTER = 51
61
+ }
@@ -0,0 +1,108 @@
1
+ --[[ Generated with https://github.com/TypeScriptToLua/TypeScriptToLua ]]
2
+ local ____exports = {}
3
+ ____exports.ModCallbacksCustom = ModCallbacksCustom or ({})
4
+ ____exports.ModCallbacksCustom.MC_POST_GAME_STARTED_REORDERED = 0
5
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_POST_GAME_STARTED_REORDERED] = "MC_POST_GAME_STARTED_REORDERED"
6
+ ____exports.ModCallbacksCustom.MC_POST_NEW_LEVEL_REORDERED = 1
7
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_POST_NEW_LEVEL_REORDERED] = "MC_POST_NEW_LEVEL_REORDERED"
8
+ ____exports.ModCallbacksCustom.MC_POST_NEW_ROOM_REORDERED = 2
9
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_POST_NEW_ROOM_REORDERED] = "MC_POST_NEW_ROOM_REORDERED"
10
+ ____exports.ModCallbacksCustom.MC_POST_PLAYER_INIT_REORDERED = 3
11
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_POST_PLAYER_INIT_REORDERED] = "MC_POST_PLAYER_INIT_REORDERED"
12
+ ____exports.ModCallbacksCustom.MC_POST_PEFFECT_UPDATE_REORDERED = 4
13
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_POST_PEFFECT_UPDATE_REORDERED] = "MC_POST_PEFFECT_UPDATE_REORDERED"
14
+ ____exports.ModCallbacksCustom.MC_POST_PLAYER_UPDATE_REORDERED = 5
15
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_POST_PLAYER_UPDATE_REORDERED] = "MC_POST_PLAYER_UPDATE_REORDERED"
16
+ ____exports.ModCallbacksCustom.MC_POST_PLAYER_RENDER_REORDERED = 6
17
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_POST_PLAYER_RENDER_REORDERED] = "MC_POST_PLAYER_RENDER_REORDERED"
18
+ ____exports.ModCallbacksCustom.MC_POST_NEW_ROOM_EARLY = 7
19
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_POST_NEW_ROOM_EARLY] = "MC_POST_NEW_ROOM_EARLY"
20
+ ____exports.ModCallbacksCustom.MC_PRE_NEW_LEVEL = 8
21
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_PRE_NEW_LEVEL] = "MC_PRE_NEW_LEVEL"
22
+ ____exports.ModCallbacksCustom.MC_ROOM_CLEAR_CHANGE = 9
23
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_ROOM_CLEAR_CHANGE] = "MC_ROOM_CLEAR_CHANGE"
24
+ ____exports.ModCallbacksCustom.MC_POST_PLAYER_INIT_LATE = 10
25
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_POST_PLAYER_INIT_LATE] = "MC_POST_PLAYER_INIT_LATE"
26
+ ____exports.ModCallbacksCustom.MC_POST_TEAR_INIT_LATE = 11
27
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_POST_TEAR_INIT_LATE] = "MC_POST_TEAR_INIT_LATE"
28
+ ____exports.ModCallbacksCustom.MC_POST_TEAR_INIT_VERY_LATE = 12
29
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_POST_TEAR_INIT_VERY_LATE] = "MC_POST_TEAR_INIT_VERY_LATE"
30
+ ____exports.ModCallbacksCustom.MC_POST_FAMILIAR_INIT_LATE = 13
31
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_POST_FAMILIAR_INIT_LATE] = "MC_POST_FAMILIAR_INIT_LATE"
32
+ ____exports.ModCallbacksCustom.MC_POST_BOMB_INIT_LATE = 14
33
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_POST_BOMB_INIT_LATE] = "MC_POST_BOMB_INIT_LATE"
34
+ ____exports.ModCallbacksCustom.MC_POST_PICKUP_INIT_LATE = 15
35
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_POST_PICKUP_INIT_LATE] = "MC_POST_PICKUP_INIT_LATE"
36
+ ____exports.ModCallbacksCustom.MC_POST_LASER_INIT_LATE = 16
37
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_POST_LASER_INIT_LATE] = "MC_POST_LASER_INIT_LATE"
38
+ ____exports.ModCallbacksCustom.MC_POST_KNIFE_INIT_LATE = 17
39
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_POST_KNIFE_INIT_LATE] = "MC_POST_KNIFE_INIT_LATE"
40
+ ____exports.ModCallbacksCustom.MC_POST_PROJECTILE_INIT_LATE = 18
41
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_POST_PROJECTILE_INIT_LATE] = "MC_POST_PROJECTILE_INIT_LATE"
42
+ ____exports.ModCallbacksCustom.MC_POST_NPC_INIT_LATE = 19
43
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_POST_NPC_INIT_LATE] = "MC_POST_NPC_INIT_LATE"
44
+ ____exports.ModCallbacksCustom.MC_POST_EFFECT_INIT_LATE = 20
45
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_POST_EFFECT_INIT_LATE] = "MC_POST_EFFECT_INIT_LATE"
46
+ ____exports.ModCallbacksCustom.MC_POST_PICKUP_COLLECT = 21
47
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_POST_PICKUP_COLLECT] = "MC_POST_PICKUP_COLLECT"
48
+ ____exports.ModCallbacksCustom.MC_PRE_ITEM_PICKUP = 22
49
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_PRE_ITEM_PICKUP] = "MC_PRE_ITEM_PICKUP"
50
+ ____exports.ModCallbacksCustom.MC_POST_ITEM_PICKUP = 23
51
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_POST_ITEM_PICKUP] = "MC_POST_ITEM_PICKUP"
52
+ ____exports.ModCallbacksCustom.MC_POST_PLAYER_CHANGE_TYPE = 24
53
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_POST_PLAYER_CHANGE_TYPE] = "MC_POST_PLAYER_CHANGE_TYPE"
54
+ ____exports.ModCallbacksCustom.MC_POST_PLAYER_CHANGE_HEALTH = 25
55
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_POST_PLAYER_CHANGE_HEALTH] = "MC_POST_PLAYER_CHANGE_HEALTH"
56
+ ____exports.ModCallbacksCustom.MC_POST_PLAYER_FATAL_DAMAGE = 26
57
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_POST_PLAYER_FATAL_DAMAGE] = "MC_POST_PLAYER_FATAL_DAMAGE"
58
+ ____exports.ModCallbacksCustom.MC_PRE_BERSERK_DEATH = 27
59
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_PRE_BERSERK_DEATH] = "MC_PRE_BERSERK_DEATH"
60
+ ____exports.ModCallbacksCustom.MC_PRE_CUSTOM_REVIVE = 28
61
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_PRE_CUSTOM_REVIVE] = "MC_PRE_CUSTOM_REVIVE"
62
+ ____exports.ModCallbacksCustom.MC_POST_CUSTOM_REVIVE = 29
63
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_POST_CUSTOM_REVIVE] = "MC_POST_CUSTOM_REVIVE"
64
+ ____exports.ModCallbacksCustom.MC_POST_FLIP = 30
65
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_POST_FLIP] = "MC_POST_FLIP"
66
+ ____exports.ModCallbacksCustom.MC_POST_FIRST_FLIP = 31
67
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_POST_FIRST_FLIP] = "MC_POST_FIRST_FLIP"
68
+ ____exports.ModCallbacksCustom.MC_POST_ESAU_JR = 32
69
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_POST_ESAU_JR] = "MC_POST_ESAU_JR"
70
+ ____exports.ModCallbacksCustom.MC_POST_FIRST_ESAU_JR = 33
71
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_POST_FIRST_ESAU_JR] = "MC_POST_FIRST_ESAU_JR"
72
+ ____exports.ModCallbacksCustom.MC_POST_TRANSFORMATION = 34
73
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_POST_TRANSFORMATION] = "MC_POST_TRANSFORMATION"
74
+ ____exports.ModCallbacksCustom.MC_POST_PURCHASE = 35
75
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_POST_PURCHASE] = "MC_POST_PURCHASE"
76
+ ____exports.ModCallbacksCustom.MC_POST_SACRIFICE = 36
77
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_POST_SACRIFICE] = "MC_POST_SACRIFICE"
78
+ ____exports.ModCallbacksCustom.MC_POST_CURSED_TELEPORT = 37
79
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_POST_CURSED_TELEPORT] = "MC_POST_CURSED_TELEPORT"
80
+ ____exports.ModCallbacksCustom.MC_POST_TRINKET_BREAK = 38
81
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_POST_TRINKET_BREAK] = "MC_POST_TRINKET_BREAK"
82
+ ____exports.ModCallbacksCustom.MC_POST_SLOT_INIT = 39
83
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_POST_SLOT_INIT] = "MC_POST_SLOT_INIT"
84
+ ____exports.ModCallbacksCustom.MC_POST_SLOT_UPDATE = 40
85
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_POST_SLOT_UPDATE] = "MC_POST_SLOT_UPDATE"
86
+ ____exports.ModCallbacksCustom.MC_POST_SLOT_RENDER = 41
87
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_POST_SLOT_RENDER] = "MC_POST_SLOT_RENDER"
88
+ ____exports.ModCallbacksCustom.MC_POST_SLOT_ANIMATION_CHANGED = 42
89
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_POST_SLOT_ANIMATION_CHANGED] = "MC_POST_SLOT_ANIMATION_CHANGED"
90
+ ____exports.ModCallbacksCustom.MC_POST_SLOT_DESTROYED = 43
91
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_POST_SLOT_DESTROYED] = "MC_POST_SLOT_DESTROYED"
92
+ ____exports.ModCallbacksCustom.MC_POST_GRID_ENTITY_INIT = 44
93
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_POST_GRID_ENTITY_INIT] = "MC_POST_GRID_ENTITY_INIT"
94
+ ____exports.ModCallbacksCustom.MC_POST_GRID_ENTITY_UPDATE = 45
95
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_POST_GRID_ENTITY_UPDATE] = "MC_POST_GRID_ENTITY_UPDATE"
96
+ ____exports.ModCallbacksCustom.MC_POST_GRID_ENTITY_REMOVE = 46
97
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_POST_GRID_ENTITY_REMOVE] = "MC_POST_GRID_ENTITY_REMOVE"
98
+ ____exports.ModCallbacksCustom.MC_POST_GRID_ENTITY_STATE_CHANGE = 47
99
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_POST_GRID_ENTITY_STATE_CHANGE] = "MC_POST_GRID_ENTITY_STATE_CHANGE"
100
+ ____exports.ModCallbacksCustom.MC_POST_GRID_ENTITY_BROKEN = 48
101
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_POST_GRID_ENTITY_BROKEN] = "MC_POST_GRID_ENTITY_BROKEN"
102
+ ____exports.ModCallbacksCustom.MC_POST_GRID_ENTITY_COLLISION = 49
103
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_POST_GRID_ENTITY_COLLISION] = "MC_POST_GRID_ENTITY_COLLISION"
104
+ ____exports.ModCallbacksCustom.MC_POST_BONE_SWING = 50
105
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_POST_BONE_SWING] = "MC_POST_BONE_SWING"
106
+ ____exports.ModCallbacksCustom.MC_POST_CUSTOM_DOOR_ENTER = 51
107
+ ____exports.ModCallbacksCustom[____exports.ModCallbacksCustom.MC_POST_CUSTOM_DOOR_ENTER] = "MC_POST_CUSTOM_DOOR_ENTER"
108
+ return ____exports
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Equal to the number in the "class" tag in the "pocketitems.xml" file. The "+" or "-" part of the
3
+ * tag is contained within the `PillEffectType` enum.
4
+ */
5
+ export declare enum PillEffectClass {
6
+ /** No valid pill will have this type. */
7
+ NULL = 0,
8
+ JOKE = 1,
9
+ MINOR = 2,
10
+ MEDIUM = 3,
11
+ MAJOR = 4,
12
+ /**
13
+ * This is not a real `PillEffectClass`. Due to limitations in the API, getting the real class of
14
+ * modded pill effects is not possible, so this value is returned instead.
15
+ */
16
+ MODDED = 5
17
+ }
@@ -0,0 +1,16 @@
1
+ --[[ Generated with https://github.com/TypeScriptToLua/TypeScriptToLua ]]
2
+ local ____exports = {}
3
+ ____exports.PillEffectClass = PillEffectClass or ({})
4
+ ____exports.PillEffectClass.NULL = 0
5
+ ____exports.PillEffectClass[____exports.PillEffectClass.NULL] = "NULL"
6
+ ____exports.PillEffectClass.JOKE = 1
7
+ ____exports.PillEffectClass[____exports.PillEffectClass.JOKE] = "JOKE"
8
+ ____exports.PillEffectClass.MINOR = 2
9
+ ____exports.PillEffectClass[____exports.PillEffectClass.MINOR] = "MINOR"
10
+ ____exports.PillEffectClass.MEDIUM = 3
11
+ ____exports.PillEffectClass[____exports.PillEffectClass.MEDIUM] = "MEDIUM"
12
+ ____exports.PillEffectClass.MAJOR = 4
13
+ ____exports.PillEffectClass[____exports.PillEffectClass.MAJOR] = "MAJOR"
14
+ ____exports.PillEffectClass.MODDED = 5
15
+ ____exports.PillEffectClass[____exports.PillEffectClass.MODDED] = "MODDED"
16
+ return ____exports
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Equal to the suffix of the "class" tag in the "pocketitems.xml" file. "+" is equal to `POSITIVE`,
3
+ * "-" is equal to `NEGATIVE`, and no suffix is equal to `NEUTRAL`.
4
+ */
5
+ export declare enum PillEffectType {
6
+ /** No valid pill will have this type. */
7
+ NULL = 0,
8
+ POSITIVE = 1,
9
+ NEGATIVE = 2,
10
+ NEUTRAL = 3,
11
+ /**
12
+ * This is not a real `PillEffectType`. Due to limitations in the API, getting the real type of
13
+ * modded pill effects is not possible, so this value is returned instead.
14
+ */
15
+ MODDED = 4
16
+ }
@@ -0,0 +1,14 @@
1
+ --[[ Generated with https://github.com/TypeScriptToLua/TypeScriptToLua ]]
2
+ local ____exports = {}
3
+ ____exports.PillEffectType = PillEffectType or ({})
4
+ ____exports.PillEffectType.NULL = 0
5
+ ____exports.PillEffectType[____exports.PillEffectType.NULL] = "NULL"
6
+ ____exports.PillEffectType.POSITIVE = 1
7
+ ____exports.PillEffectType[____exports.PillEffectType.POSITIVE] = "POSITIVE"
8
+ ____exports.PillEffectType.NEGATIVE = 2
9
+ ____exports.PillEffectType[____exports.PillEffectType.NEGATIVE] = "NEGATIVE"
10
+ ____exports.PillEffectType.NEUTRAL = 3
11
+ ____exports.PillEffectType[____exports.PillEffectType.NEUTRAL] = "NEUTRAL"
12
+ ____exports.PillEffectType.MODDED = 4
13
+ ____exports.PillEffectType[____exports.PillEffectType.MODDED] = "MODDED"
14
+ return ____exports
@@ -0,0 +1,8 @@
1
+ export declare enum PocketItemType {
2
+ EMPTY = 0,
3
+ CARD = 1,
4
+ PILL = 2,
5
+ ACTIVE_ITEM = 3,
6
+ DICE_BAG_DICE = 4,
7
+ UNDETERMINABLE = 5
8
+ }
@@ -0,0 +1,16 @@
1
+ --[[ Generated with https://github.com/TypeScriptToLua/TypeScriptToLua ]]
2
+ local ____exports = {}
3
+ ____exports.PocketItemType = PocketItemType or ({})
4
+ ____exports.PocketItemType.EMPTY = 0
5
+ ____exports.PocketItemType[____exports.PocketItemType.EMPTY] = "EMPTY"
6
+ ____exports.PocketItemType.CARD = 1
7
+ ____exports.PocketItemType[____exports.PocketItemType.CARD] = "CARD"
8
+ ____exports.PocketItemType.PILL = 2
9
+ ____exports.PocketItemType[____exports.PocketItemType.PILL] = "PILL"
10
+ ____exports.PocketItemType.ACTIVE_ITEM = 3
11
+ ____exports.PocketItemType[____exports.PocketItemType.ACTIVE_ITEM] = "ACTIVE_ITEM"
12
+ ____exports.PocketItemType.DICE_BAG_DICE = 4
13
+ ____exports.PocketItemType[____exports.PocketItemType.DICE_BAG_DICE] = "DICE_BAG_DICE"
14
+ ____exports.PocketItemType.UNDETERMINABLE = 5
15
+ ____exports.PocketItemType[____exports.PocketItemType.UNDETERMINABLE] = "UNDETERMINABLE"
16
+ return ____exports
@@ -0,0 +1,6 @@
1
+ export declare enum SaveDataKeys {
2
+ Persistent = "persistent",
3
+ Run = "run",
4
+ Level = "level",
5
+ Room = "room"
6
+ }
@@ -0,0 +1,8 @@
1
+ --[[ Generated with https://github.com/TypeScriptToLua/TypeScriptToLua ]]
2
+ local ____exports = {}
3
+ ____exports.SaveDataKeys = SaveDataKeys or ({})
4
+ ____exports.SaveDataKeys.Persistent = "persistent"
5
+ ____exports.SaveDataKeys.Run = "run"
6
+ ____exports.SaveDataKeys.Level = "level"
7
+ ____exports.SaveDataKeys.Room = "room"
8
+ return ____exports
@@ -0,0 +1,15 @@
1
+ /// <reference types="typescript-to-lua/language-extensions" />
2
+ export declare enum SerializationBrand {
3
+ DEFAULT_MAP = "__TSTL_DEFAULT_MAP",
4
+ /**
5
+ * This is set to the value that represents the default value (instead of an empty string like the
6
+ * other brands are).
7
+ */
8
+ DEFAULT_MAP_VALUE = "__TSTL_DEFAULT_MAP_VALUE",
9
+ MAP = "__TSTL_MAP",
10
+ SET = "__TSTL_SET",
11
+ CLASS = "__TSTL_CLASS",
12
+ OBJECT_WITH_NUMBER_KEYS = "__TSTL_OBJECT_WITH_NUMBER_KEYS",
13
+ VECTOR = "__VECTOR"
14
+ }
15
+ export declare function isSerializationBrand(key: AnyNotNil): boolean;
@@ -0,0 +1,24 @@
1
+ --[[ Generated with https://github.com/TypeScriptToLua/TypeScriptToLua ]]
2
+ local ____lualib = require("lualib_bundle")
3
+ local Set = ____lualib.Set
4
+ local __TS__New = ____lualib.__TS__New
5
+ local ____exports = {}
6
+ local ____utils = require("functions.utils")
7
+ local getEnumValues = ____utils.getEnumValues
8
+ ____exports.SerializationBrand = SerializationBrand or ({})
9
+ ____exports.SerializationBrand.DEFAULT_MAP = "__TSTL_DEFAULT_MAP"
10
+ ____exports.SerializationBrand.DEFAULT_MAP_VALUE = "__TSTL_DEFAULT_MAP_VALUE"
11
+ ____exports.SerializationBrand.MAP = "__TSTL_MAP"
12
+ ____exports.SerializationBrand.SET = "__TSTL_SET"
13
+ ____exports.SerializationBrand.CLASS = "__TSTL_CLASS"
14
+ ____exports.SerializationBrand.OBJECT_WITH_NUMBER_KEYS = "__TSTL_OBJECT_WITH_NUMBER_KEYS"
15
+ ____exports.SerializationBrand.VECTOR = "__VECTOR"
16
+ local SERIALIZATION_BRANDS = getEnumValues(nil, ____exports.SerializationBrand)
17
+ local SERIALIZATION_BRAND_SET = __TS__New(Set, SERIALIZATION_BRANDS)
18
+ function ____exports.isSerializationBrand(self, key)
19
+ if type(key) ~= "string" then
20
+ return false
21
+ end
22
+ return SERIALIZATION_BRAND_SET:has(key)
23
+ end
24
+ return ____exports
@@ -9,6 +9,8 @@ local ____exports = {}
9
9
  local postNewRoom, setDecorationsInvisible, respawnPersistentEntities, removeSpecificNPCs, fillRoomWithDecorations, spawnAllEntities, spawnGridEntityForJSONRoom, spawnNormalEntityForJSONRoom, storePersistentEntity, fixPitGraphics, getPitMap, getPitFrame, FEATURE_NAME, NPC_TYPES_TO_NOT_REMOVE, PERSISTENT_ENTITY_TYPES, v
10
10
  local ____cachedClasses = require("cachedClasses")
11
11
  local game = ____cachedClasses.game
12
+ local ____DefaultMap = require("classes.DefaultMap")
13
+ local DefaultMap = ____DefaultMap.DefaultMap
12
14
  local ____featuresInitialized = require("featuresInitialized")
13
15
  local errorIfFeaturesNotInitialized = ____featuresInitialized.errorIfFeaturesNotInitialized
14
16
  local ____entity = require("functions.entity")
@@ -40,8 +42,6 @@ local setRoomCleared = ____rooms.setRoomCleared
40
42
  local setRoomUncleared = ____rooms.setRoomUncleared
41
43
  local ____spawnCollectible = require("functions.spawnCollectible")
42
44
  local spawnCollectible = ____spawnCollectible.spawnCollectible
43
- local ____DefaultMap = require("types.DefaultMap")
44
- local DefaultMap = ____DefaultMap.DefaultMap
45
45
  local ____exports = require("features.saveDataManager.exports")
46
46
  local saveDataManager = ____exports.saveDataManager
47
47
  function postNewRoom(self)
@@ -11,6 +11,8 @@ local sfxManager = ____cachedClasses.sfxManager
11
11
  local ____constants = require("constants")
12
12
  local PILL_GIANT_FLAG = ____constants.PILL_GIANT_FLAG
13
13
  local TRINKET_GOLDEN_FLAG = ____constants.TRINKET_GOLDEN_FLAG
14
+ local ____HealthType = require("enums.HealthType")
15
+ local HealthType = ____HealthType.HealthType
14
16
  local ____cards = require("functions.cards")
15
17
  local getCardName = ____cards.getCardName
16
18
  local ____gridEntity = require("functions.gridEntity")
@@ -56,8 +58,6 @@ local ROOM_TYPE_MAP = ____roomTypeMap.ROOM_TYPE_MAP
56
58
  local ____roomTypeNames = require("objects.roomTypeNames")
57
59
  local DEFAULT_ROOM_TYPE_NAME = ____roomTypeNames.DEFAULT_ROOM_TYPE_NAME
58
60
  local ROOM_TYPE_NAMES = ____roomTypeNames.ROOM_TYPE_NAMES
59
- local ____HealthType = require("types.HealthType")
60
- local HealthType = ____HealthType.HealthType
61
61
  local ____v = require("features.extraConsoleCommands.v")
62
62
  local v = ____v.default
63
63
  function ____exports.blackHearts(self, params)
@@ -4,6 +4,8 @@ local Set = ____lualib.Set
4
4
  local __TS__New = ____lualib.__TS__New
5
5
  local ____exports = {}
6
6
  local postPEffectUpdateReordered, FLAGS_WHEN_PONY_IS_ACTIVE, v
7
+ local ____ModCallbacksCustom = require("enums.ModCallbacksCustom")
8
+ local ModCallbacksCustom = ____ModCallbacksCustom.ModCallbacksCustom
7
9
  local ____featuresInitialized = require("featuresInitialized")
8
10
  local errorIfFeaturesNotInitialized = ____featuresInitialized.errorIfFeaturesNotInitialized
9
11
  local ____flag = require("functions.flag")
@@ -12,8 +14,6 @@ local ____playerDataStructures = require("functions.playerDataStructures")
12
14
  local setAddPlayer = ____playerDataStructures.setAddPlayer
13
15
  local setDeletePlayer = ____playerDataStructures.setDeletePlayer
14
16
  local setHasPlayer = ____playerDataStructures.setHasPlayer
15
- local ____ModCallbacksCustom = require("types.ModCallbacksCustom")
16
- local ModCallbacksCustom = ____ModCallbacksCustom.ModCallbacksCustom
17
17
  local ____exports = require("features.saveDataManager.exports")
18
18
  local saveDataManager = ____exports.saveDataManager
19
19
  function postPEffectUpdateReordered(self, player)
@@ -6,6 +6,10 @@ local __TS__ArrayPush = ____lualib.__TS__ArrayPush
6
6
  local __TS__Iterator = ____lualib.__TS__Iterator
7
7
  local ____exports = {}
8
8
  local newPlayerInventory, useItemD4, postPlayerInit, postItemPickup, v
9
+ local ____DefaultMap = require("classes.DefaultMap")
10
+ local DefaultMap = ____DefaultMap.DefaultMap
11
+ local ____ModCallbacksCustom = require("enums.ModCallbacksCustom")
12
+ local ModCallbacksCustom = ____ModCallbacksCustom.ModCallbacksCustom
9
13
  local ____featuresInitialized = require("featuresInitialized")
10
14
  local errorIfFeaturesNotInitialized = ____featuresInitialized.errorIfFeaturesNotInitialized
11
15
  local ____array = require("functions.array")
@@ -16,10 +20,6 @@ local ____player = require("functions.player")
16
20
  local getPlayerIndex = ____player.getPlayerIndex
17
21
  local ____utils = require("functions.utils")
18
22
  local ____repeat = ____utils["repeat"]
19
- local ____DefaultMap = require("types.DefaultMap")
20
- local DefaultMap = ____DefaultMap.DefaultMap
21
- local ____ModCallbacksCustom = require("types.ModCallbacksCustom")
22
- local ModCallbacksCustom = ____ModCallbacksCustom.ModCallbacksCustom
23
23
  local ____exports = require("features.saveDataManager.exports")
24
24
  local saveDataManager = ____exports.saveDataManager
25
25
  function newPlayerInventory(self, player)
@@ -61,9 +61,13 @@ import { SaveData } from "../../types/private/SaveData";
61
61
  * data manager cannot do this on its own because it cannot know when your mod features are finished
62
62
  * initializing.)
63
63
  *
64
+ * Finally, some features may have variables that need to be automatically reset per run/level, but
65
+ * not saved to disk on game exit. (For example, if they contain functions or other non-serializable
66
+ * data.) For these cases, set a special key of "dontSave" alongside "run", "level", and so forth.
67
+ *
64
68
  * @param key The name of the file or feature that is submitting data to be managed by the save data
65
69
  * manager. The save data manager will throw an error if the key is already registered.
66
- * @param saveData An object that corresponds to the `SaveData` interface. The object is
70
+ * @param v An object that corresponds to the `SaveData` interface. The object is
67
71
  * conventionally called "v" for brevity (which is short for "local variables").
68
72
  * @param conditionalFunc An optional function to run upon saving this key to disk. For example,
69
73
  * this allows features to only save data to disk if the feature is enabled. Specify a value of
@@ -71,7 +75,7 @@ import { SaveData } from "../../types/private/SaveData";
71
75
  * data that is not serializable, or you want to use the save data manager to automatically reset
72
76
  * variables on run/level/room, but not clutter the the "save#.dat" file with unnecessary keys.
73
77
  */
74
- export declare function saveDataManager(key: string, saveData: SaveData, conditionalFunc?: () => boolean): void;
78
+ export declare function saveDataManager(key: string, v: SaveData, conditionalFunc?: () => boolean): void;
75
79
  /**
76
80
  * The save data manager will automatically save variables to disk at the appropriate times (i.e.
77
81
  * when the run is exited). Use this function to explicitly force the save data manager to write all
@@ -17,7 +17,7 @@ local ____maps = require("features.saveDataManager.maps")
17
17
  local saveDataConditionalFuncMap = ____maps.saveDataConditionalFuncMap
18
18
  local saveDataDefaultsMap = ____maps.saveDataDefaultsMap
19
19
  local saveDataMap = ____maps.saveDataMap
20
- function ____exports.saveDataManager(self, key, saveData, conditionalFunc)
20
+ function ____exports.saveDataManager(self, key, v, conditionalFunc)
21
21
  errorIfFeaturesNotInitialized(nil, SAVE_DATA_MANAGER_FEATURE_NAME)
22
22
  local keyType = type(key)
23
23
  if keyType ~= "string" then
@@ -26,12 +26,12 @@ function ____exports.saveDataManager(self, key, saveData, conditionalFunc)
26
26
  if saveDataMap[key] ~= nil then
27
27
  error((("The " .. SAVE_DATA_MANAGER_FEATURE_NAME) .. " is already managing save data for a key of: ") .. key)
28
28
  end
29
- saveDataMap[key] = saveData
30
- local saveDataKeys = __TS__ObjectKeys(saveData)
29
+ saveDataMap[key] = v
30
+ local saveDataKeys = __TS__ObjectKeys(v)
31
31
  if #saveDataKeys == 1 and saveDataKeys[1] == "room" then
32
32
  conditionalFunc = function() return false end
33
33
  end
34
- local saveDataTable = saveData
34
+ local saveDataTable = v
35
35
  local saveDataTableCopy = deepCopy(nil, saveDataTable, SerializationType.NONE, key)
36
36
  local saveDataCopy = saveDataTableCopy
37
37
  saveDataDefaultsMap[key] = saveDataCopy