isaacscript-common 21.2.1 → 21.3.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 (90) hide show
  1. package/dist/index.d.ts +169 -84
  2. package/dist/isaacscript-common.lua +526 -444
  3. package/dist/src/arrays/cachedEnumValues.d.ts +24 -0
  4. package/dist/src/arrays/cachedEnumValues.d.ts.map +1 -0
  5. package/dist/src/arrays/cachedEnumValues.lua +46 -0
  6. package/dist/src/callbackClasses.d.ts +1 -0
  7. package/dist/src/callbackClasses.d.ts.map +1 -1
  8. package/dist/src/callbackClasses.lua +5 -0
  9. package/dist/src/callbacks.d.ts +66 -65
  10. package/dist/src/callbacks.d.ts.map +1 -1
  11. package/dist/src/callbacks.lua +1 -0
  12. package/dist/src/classes/callbacks/PostItemDischarge.d.ts.map +1 -1
  13. package/dist/src/classes/callbacks/PostItemDischarge.lua +3 -4
  14. package/dist/src/classes/callbacks/PostKeyboardPressed.d.ts +14 -0
  15. package/dist/src/classes/callbacks/PostKeyboardPressed.d.ts.map +1 -0
  16. package/dist/src/classes/callbacks/PostKeyboardPressed.lua +49 -0
  17. package/dist/src/classes/callbacks/PostPlayerChangeHealth.d.ts.map +1 -1
  18. package/dist/src/classes/callbacks/PostPlayerChangeHealth.lua +3 -5
  19. package/dist/src/classes/callbacks/PostPlayerChangeStat.d.ts.map +1 -1
  20. package/dist/src/classes/callbacks/PostPlayerChangeStat.lua +3 -5
  21. package/dist/src/classes/callbacks/PostTransformation.d.ts.map +1 -1
  22. package/dist/src/classes/callbacks/PostTransformation.lua +3 -5
  23. package/dist/src/classes/features/callbackLogic/PlayerCollectibleDetection.lua +3 -4
  24. package/dist/src/classes/features/other/DebugDisplay.d.ts +91 -19
  25. package/dist/src/classes/features/other/DebugDisplay.d.ts.map +1 -1
  26. package/dist/src/classes/features/other/DebugDisplay.lua +42 -38
  27. package/dist/src/classes/features/other/DeployJSONRoom.d.ts.map +1 -1
  28. package/dist/src/classes/features/other/DeployJSONRoom.lua +3 -5
  29. package/dist/src/classes/features/other/ModdedElementSets.d.ts.map +1 -1
  30. package/dist/src/classes/features/other/ModdedElementSets.lua +9 -7
  31. package/dist/src/classes/features/other/customStages/streakText.d.ts.map +1 -1
  32. package/dist/src/classes/features/other/customStages/streakText.lua +3 -4
  33. package/dist/src/classes/features/other/extraConsoleCommands/commands.d.ts.map +1 -1
  34. package/dist/src/classes/features/other/extraConsoleCommands/commands.lua +5 -7
  35. package/dist/src/enums/ModCallbackCustom.d.ts +74 -65
  36. package/dist/src/enums/ModCallbackCustom.d.ts.map +1 -1
  37. package/dist/src/enums/ModCallbackCustom.lua +67 -65
  38. package/dist/src/functions/doors.d.ts.map +1 -1
  39. package/dist/src/functions/doors.lua +5 -6
  40. package/dist/src/functions/input.d.ts.map +1 -1
  41. package/dist/src/functions/input.lua +4 -6
  42. package/dist/src/functions/level.d.ts.map +1 -1
  43. package/dist/src/functions/level.lua +3 -5
  44. package/dist/src/functions/pills.d.ts.map +1 -1
  45. package/dist/src/functions/pills.lua +3 -5
  46. package/dist/src/functions/playerHealth.d.ts.map +1 -1
  47. package/dist/src/functions/playerHealth.lua +3 -4
  48. package/dist/src/functions/players.d.ts.map +1 -1
  49. package/dist/src/functions/players.lua +6 -7
  50. package/dist/src/functions/pocketItems.d.ts.map +1 -1
  51. package/dist/src/functions/pocketItems.lua +3 -5
  52. package/dist/src/functions/roomData.d.ts.map +1 -1
  53. package/dist/src/functions/roomData.lua +3 -6
  54. package/dist/src/functions/roomShapeWalls.lua +3 -3
  55. package/dist/src/functions/serialization.lua +3 -6
  56. package/dist/src/functions/sound.d.ts.map +1 -1
  57. package/dist/src/functions/sound.lua +3 -3
  58. package/dist/src/functions/transformations.d.ts.map +1 -1
  59. package/dist/src/functions/transformations.lua +4 -5
  60. package/dist/src/interfaces/private/AddCallbackParametersCustom.d.ts +5 -1
  61. package/dist/src/interfaces/private/AddCallbackParametersCustom.d.ts.map +1 -1
  62. package/package.json +1 -1
  63. package/src/arrays/cachedEnumValues.ts +75 -0
  64. package/src/callbackClasses.ts +1 -0
  65. package/src/callbacks.ts +1 -0
  66. package/src/classes/callbacks/PostItemDischarge.ts +2 -2
  67. package/src/classes/callbacks/PostKeyboardPressed.ts +52 -0
  68. package/src/classes/callbacks/PostPlayerChangeHealth.ts +2 -2
  69. package/src/classes/callbacks/PostPlayerChangeStat.ts +2 -2
  70. package/src/classes/callbacks/PostTransformation.ts +2 -2
  71. package/src/classes/features/callbackLogic/PlayerCollectibleDetection.ts +2 -2
  72. package/src/classes/features/other/DebugDisplay.ts +120 -39
  73. package/src/classes/features/other/DeployJSONRoom.ts +2 -3
  74. package/src/classes/features/other/ModdedElementSets.ts +10 -6
  75. package/src/classes/features/other/customStages/streakText.ts +2 -2
  76. package/src/classes/features/other/extraConsoleCommands/commands.ts +6 -7
  77. package/src/enums/ModCallbackCustom.ts +10 -0
  78. package/src/functions/doors.ts +7 -4
  79. package/src/functions/input.ts +3 -5
  80. package/src/functions/level.ts +2 -3
  81. package/src/functions/pills.ts +2 -4
  82. package/src/functions/playerHealth.ts +2 -2
  83. package/src/functions/players.ts +7 -6
  84. package/src/functions/pocketItems.ts +2 -3
  85. package/src/functions/roomData.ts +2 -4
  86. package/src/functions/roomShapeWalls.ts +2 -2
  87. package/src/functions/serialization.ts +4 -4
  88. package/src/functions/sound.ts +2 -1
  89. package/src/functions/transformations.ts +3 -4
  90. package/src/interfaces/private/AddCallbackParametersCustom.ts +6 -0
@@ -1,6 +1,6 @@
1
1
  --[[
2
2
 
3
- isaacscript-common 21.2.1
3
+ isaacscript-common 21.3.0
4
4
 
5
5
  This is the "isaacscript-common" library, which was created with the IsaacScript tool.
6
6
 
@@ -2645,135 +2645,137 @@ ____exports.ModCallbackCustom.POST_ITEM_DISCHARGE = 42
2645
2645
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_ITEM_DISCHARGE] = "POST_ITEM_DISCHARGE"
2646
2646
  ____exports.ModCallbackCustom.POST_ITEM_PICKUP = 43
2647
2647
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_ITEM_PICKUP] = "POST_ITEM_PICKUP"
2648
- ____exports.ModCallbackCustom.POST_KNIFE_INIT_LATE = 44
2648
+ ____exports.ModCallbackCustom.POST_KEYBOARD_PRESSED = 44
2649
+ ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_KEYBOARD_PRESSED] = "POST_KEYBOARD_PRESSED"
2650
+ ____exports.ModCallbackCustom.POST_KNIFE_INIT_LATE = 45
2649
2651
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_KNIFE_INIT_LATE] = "POST_KNIFE_INIT_LATE"
2650
- ____exports.ModCallbackCustom.POST_LASER_INIT_LATE = 45
2652
+ ____exports.ModCallbackCustom.POST_LASER_INIT_LATE = 46
2651
2653
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_LASER_INIT_LATE] = "POST_LASER_INIT_LATE"
2652
- ____exports.ModCallbackCustom.POST_NEW_LEVEL_REORDERED = 46
2654
+ ____exports.ModCallbackCustom.POST_NEW_LEVEL_REORDERED = 47
2653
2655
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_NEW_LEVEL_REORDERED] = "POST_NEW_LEVEL_REORDERED"
2654
- ____exports.ModCallbackCustom.POST_NEW_ROOM_EARLY = 47
2656
+ ____exports.ModCallbackCustom.POST_NEW_ROOM_EARLY = 48
2655
2657
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_NEW_ROOM_EARLY] = "POST_NEW_ROOM_EARLY"
2656
- ____exports.ModCallbackCustom.POST_NEW_ROOM_REORDERED = 48
2658
+ ____exports.ModCallbackCustom.POST_NEW_ROOM_REORDERED = 49
2657
2659
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_NEW_ROOM_REORDERED] = "POST_NEW_ROOM_REORDERED"
2658
- ____exports.ModCallbackCustom.POST_NPC_DEATH_FILTER = 49
2660
+ ____exports.ModCallbackCustom.POST_NPC_DEATH_FILTER = 50
2659
2661
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_NPC_DEATH_FILTER] = "POST_NPC_DEATH_FILTER"
2660
- ____exports.ModCallbackCustom.POST_NPC_INIT_FILTER = 50
2662
+ ____exports.ModCallbackCustom.POST_NPC_INIT_FILTER = 51
2661
2663
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_NPC_INIT_FILTER] = "POST_NPC_INIT_FILTER"
2662
- ____exports.ModCallbackCustom.POST_NPC_INIT_LATE = 51
2664
+ ____exports.ModCallbackCustom.POST_NPC_INIT_LATE = 52
2663
2665
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_NPC_INIT_LATE] = "POST_NPC_INIT_LATE"
2664
- ____exports.ModCallbackCustom.POST_NPC_RENDER_FILTER = 52
2666
+ ____exports.ModCallbackCustom.POST_NPC_RENDER_FILTER = 53
2665
2667
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_NPC_RENDER_FILTER] = "POST_NPC_RENDER_FILTER"
2666
- ____exports.ModCallbackCustom.POST_NPC_STATE_CHANGED = 53
2668
+ ____exports.ModCallbackCustom.POST_NPC_STATE_CHANGED = 54
2667
2669
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_NPC_STATE_CHANGED] = "POST_NPC_STATE_CHANGED"
2668
- ____exports.ModCallbackCustom.POST_NPC_UPDATE_FILTER = 54
2670
+ ____exports.ModCallbackCustom.POST_NPC_UPDATE_FILTER = 55
2669
2671
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_NPC_UPDATE_FILTER] = "POST_NPC_UPDATE_FILTER"
2670
- ____exports.ModCallbackCustom.POST_PEFFECT_UPDATE_REORDERED = 55
2672
+ ____exports.ModCallbackCustom.POST_PEFFECT_UPDATE_REORDERED = 56
2671
2673
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_PEFFECT_UPDATE_REORDERED] = "POST_PEFFECT_UPDATE_REORDERED"
2672
- ____exports.ModCallbackCustom.POST_PICKUP_COLLECT = 56
2674
+ ____exports.ModCallbackCustom.POST_PICKUP_COLLECT = 57
2673
2675
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_PICKUP_COLLECT] = "POST_PICKUP_COLLECT"
2674
- ____exports.ModCallbackCustom.POST_PICKUP_INIT_FILTER = 57
2676
+ ____exports.ModCallbackCustom.POST_PICKUP_INIT_FILTER = 58
2675
2677
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_PICKUP_INIT_FILTER] = "POST_PICKUP_INIT_FILTER"
2676
- ____exports.ModCallbackCustom.POST_PICKUP_INIT_FIRST = 58
2678
+ ____exports.ModCallbackCustom.POST_PICKUP_INIT_FIRST = 59
2677
2679
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_PICKUP_INIT_FIRST] = "POST_PICKUP_INIT_FIRST"
2678
- ____exports.ModCallbackCustom.POST_PICKUP_INIT_LATE = 59
2680
+ ____exports.ModCallbackCustom.POST_PICKUP_INIT_LATE = 60
2679
2681
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_PICKUP_INIT_LATE] = "POST_PICKUP_INIT_LATE"
2680
- ____exports.ModCallbackCustom.POST_PICKUP_RENDER_FILTER = 60
2682
+ ____exports.ModCallbackCustom.POST_PICKUP_RENDER_FILTER = 61
2681
2683
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_PICKUP_RENDER_FILTER] = "POST_PICKUP_RENDER_FILTER"
2682
- ____exports.ModCallbackCustom.POST_PICKUP_SELECTION_FILTER = 61
2684
+ ____exports.ModCallbackCustom.POST_PICKUP_SELECTION_FILTER = 62
2683
2685
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_PICKUP_SELECTION_FILTER] = "POST_PICKUP_SELECTION_FILTER"
2684
- ____exports.ModCallbackCustom.POST_PICKUP_STATE_CHANGED = 62
2686
+ ____exports.ModCallbackCustom.POST_PICKUP_STATE_CHANGED = 63
2685
2687
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_PICKUP_STATE_CHANGED] = "POST_PICKUP_STATE_CHANGED"
2686
- ____exports.ModCallbackCustom.POST_PICKUP_UPDATE_FILTER = 63
2688
+ ____exports.ModCallbackCustom.POST_PICKUP_UPDATE_FILTER = 64
2687
2689
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_PICKUP_UPDATE_FILTER] = "POST_PICKUP_UPDATE_FILTER"
2688
- ____exports.ModCallbackCustom.POST_PIT_RENDER = 64
2690
+ ____exports.ModCallbackCustom.POST_PIT_RENDER = 65
2689
2691
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_PIT_RENDER] = "POST_PIT_RENDER"
2690
- ____exports.ModCallbackCustom.POST_PIT_UPDATE = 65
2692
+ ____exports.ModCallbackCustom.POST_PIT_UPDATE = 66
2691
2693
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_PIT_UPDATE] = "POST_PIT_UPDATE"
2692
- ____exports.ModCallbackCustom.POST_PLAYER_CHANGE_HEALTH = 66
2694
+ ____exports.ModCallbackCustom.POST_PLAYER_CHANGE_HEALTH = 67
2693
2695
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_PLAYER_CHANGE_HEALTH] = "POST_PLAYER_CHANGE_HEALTH"
2694
- ____exports.ModCallbackCustom.POST_PLAYER_CHANGE_STAT = 67
2696
+ ____exports.ModCallbackCustom.POST_PLAYER_CHANGE_STAT = 68
2695
2697
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_PLAYER_CHANGE_STAT] = "POST_PLAYER_CHANGE_STAT"
2696
- ____exports.ModCallbackCustom.POST_PLAYER_CHANGE_TYPE = 68
2698
+ ____exports.ModCallbackCustom.POST_PLAYER_CHANGE_TYPE = 69
2697
2699
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_PLAYER_CHANGE_TYPE] = "POST_PLAYER_CHANGE_TYPE"
2698
- ____exports.ModCallbackCustom.POST_PLAYER_COLLECTIBLE_ADDED = 69
2700
+ ____exports.ModCallbackCustom.POST_PLAYER_COLLECTIBLE_ADDED = 70
2699
2701
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_PLAYER_COLLECTIBLE_ADDED] = "POST_PLAYER_COLLECTIBLE_ADDED"
2700
- ____exports.ModCallbackCustom.POST_PLAYER_COLLECTIBLE_REMOVED = 70
2702
+ ____exports.ModCallbackCustom.POST_PLAYER_COLLECTIBLE_REMOVED = 71
2701
2703
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_PLAYER_COLLECTIBLE_REMOVED] = "POST_PLAYER_COLLECTIBLE_REMOVED"
2702
- ____exports.ModCallbackCustom.POST_PLAYER_FATAL_DAMAGE = 71
2704
+ ____exports.ModCallbackCustom.POST_PLAYER_FATAL_DAMAGE = 72
2703
2705
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_PLAYER_FATAL_DAMAGE] = "POST_PLAYER_FATAL_DAMAGE"
2704
- ____exports.ModCallbackCustom.POST_PLAYER_INIT_FIRST = 72
2706
+ ____exports.ModCallbackCustom.POST_PLAYER_INIT_FIRST = 73
2705
2707
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_PLAYER_INIT_FIRST] = "POST_PLAYER_INIT_FIRST"
2706
- ____exports.ModCallbackCustom.POST_PLAYER_INIT_LATE = 73
2708
+ ____exports.ModCallbackCustom.POST_PLAYER_INIT_LATE = 74
2707
2709
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_PLAYER_INIT_LATE] = "POST_PLAYER_INIT_LATE"
2708
- ____exports.ModCallbackCustom.POST_PLAYER_RENDER_REORDERED = 74
2710
+ ____exports.ModCallbackCustom.POST_PLAYER_RENDER_REORDERED = 75
2709
2711
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_PLAYER_RENDER_REORDERED] = "POST_PLAYER_RENDER_REORDERED"
2710
- ____exports.ModCallbackCustom.POST_PLAYER_UPDATE_REORDERED = 75
2712
+ ____exports.ModCallbackCustom.POST_PLAYER_UPDATE_REORDERED = 76
2711
2713
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_PLAYER_UPDATE_REORDERED] = "POST_PLAYER_UPDATE_REORDERED"
2712
- ____exports.ModCallbackCustom.POST_POOP_RENDER = 76
2714
+ ____exports.ModCallbackCustom.POST_POOP_RENDER = 77
2713
2715
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_POOP_RENDER] = "POST_POOP_RENDER"
2714
- ____exports.ModCallbackCustom.POST_POOP_UPDATE = 77
2716
+ ____exports.ModCallbackCustom.POST_POOP_UPDATE = 78
2715
2717
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_POOP_UPDATE] = "POST_POOP_UPDATE"
2716
- ____exports.ModCallbackCustom.POST_PRESSURE_PLATE_RENDER = 78
2718
+ ____exports.ModCallbackCustom.POST_PRESSURE_PLATE_RENDER = 79
2717
2719
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_PRESSURE_PLATE_RENDER] = "POST_PRESSURE_PLATE_RENDER"
2718
- ____exports.ModCallbackCustom.POST_PRESSURE_PLATE_UPDATE = 79
2720
+ ____exports.ModCallbackCustom.POST_PRESSURE_PLATE_UPDATE = 80
2719
2721
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_PRESSURE_PLATE_UPDATE] = "POST_PRESSURE_PLATE_UPDATE"
2720
- ____exports.ModCallbackCustom.POST_PROJECTILE_INIT_LATE = 80
2722
+ ____exports.ModCallbackCustom.POST_PROJECTILE_INIT_LATE = 81
2721
2723
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_PROJECTILE_INIT_LATE] = "POST_PROJECTILE_INIT_LATE"
2722
- ____exports.ModCallbackCustom.POST_PURCHASE = 81
2724
+ ____exports.ModCallbackCustom.POST_PURCHASE = 82
2723
2725
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_PURCHASE] = "POST_PURCHASE"
2724
- ____exports.ModCallbackCustom.POST_ROCK_RENDER = 82
2726
+ ____exports.ModCallbackCustom.POST_ROCK_RENDER = 83
2725
2727
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_ROCK_RENDER] = "POST_ROCK_RENDER"
2726
- ____exports.ModCallbackCustom.POST_ROCK_UPDATE = 83
2728
+ ____exports.ModCallbackCustom.POST_ROCK_UPDATE = 84
2727
2729
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_ROCK_UPDATE] = "POST_ROCK_UPDATE"
2728
- ____exports.ModCallbackCustom.POST_ROOM_CLEAR_CHANGED = 84
2730
+ ____exports.ModCallbackCustom.POST_ROOM_CLEAR_CHANGED = 85
2729
2731
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_ROOM_CLEAR_CHANGED] = "POST_ROOM_CLEAR_CHANGED"
2730
- ____exports.ModCallbackCustom.POST_SACRIFICE = 85
2732
+ ____exports.ModCallbackCustom.POST_SACRIFICE = 86
2731
2733
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_SACRIFICE] = "POST_SACRIFICE"
2732
- ____exports.ModCallbackCustom.POST_SLOT_ANIMATION_CHANGED = 86
2734
+ ____exports.ModCallbackCustom.POST_SLOT_ANIMATION_CHANGED = 87
2733
2735
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_SLOT_ANIMATION_CHANGED] = "POST_SLOT_ANIMATION_CHANGED"
2734
- ____exports.ModCallbackCustom.POST_SLOT_COLLISION = 87
2736
+ ____exports.ModCallbackCustom.POST_SLOT_COLLISION = 88
2735
2737
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_SLOT_COLLISION] = "POST_SLOT_COLLISION"
2736
- ____exports.ModCallbackCustom.POST_SLOT_DESTROYED = 88
2738
+ ____exports.ModCallbackCustom.POST_SLOT_DESTROYED = 89
2737
2739
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_SLOT_DESTROYED] = "POST_SLOT_DESTROYED"
2738
- ____exports.ModCallbackCustom.POST_SLOT_INIT = 89
2740
+ ____exports.ModCallbackCustom.POST_SLOT_INIT = 90
2739
2741
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_SLOT_INIT] = "POST_SLOT_INIT"
2740
- ____exports.ModCallbackCustom.POST_SLOT_RENDER = 90
2742
+ ____exports.ModCallbackCustom.POST_SLOT_RENDER = 91
2741
2743
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_SLOT_RENDER] = "POST_SLOT_RENDER"
2742
- ____exports.ModCallbackCustom.POST_SLOT_UPDATE = 91
2744
+ ____exports.ModCallbackCustom.POST_SLOT_UPDATE = 92
2743
2745
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_SLOT_UPDATE] = "POST_SLOT_UPDATE"
2744
- ____exports.ModCallbackCustom.POST_SPIKES_RENDER = 92
2746
+ ____exports.ModCallbackCustom.POST_SPIKES_RENDER = 93
2745
2747
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_SPIKES_RENDER] = "POST_SPIKES_RENDER"
2746
- ____exports.ModCallbackCustom.POST_SPIKES_UPDATE = 93
2748
+ ____exports.ModCallbackCustom.POST_SPIKES_UPDATE = 94
2747
2749
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_SPIKES_UPDATE] = "POST_SPIKES_UPDATE"
2748
- ____exports.ModCallbackCustom.POST_TEAR_INIT_LATE = 94
2750
+ ____exports.ModCallbackCustom.POST_TEAR_INIT_LATE = 95
2749
2751
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_TEAR_INIT_LATE] = "POST_TEAR_INIT_LATE"
2750
- ____exports.ModCallbackCustom.POST_TEAR_INIT_VERY_LATE = 95
2752
+ ____exports.ModCallbackCustom.POST_TEAR_INIT_VERY_LATE = 96
2751
2753
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_TEAR_INIT_VERY_LATE] = "POST_TEAR_INIT_VERY_LATE"
2752
- ____exports.ModCallbackCustom.POST_TNT_RENDER = 96
2754
+ ____exports.ModCallbackCustom.POST_TNT_RENDER = 97
2753
2755
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_TNT_RENDER] = "POST_TNT_RENDER"
2754
- ____exports.ModCallbackCustom.POST_TNT_UPDATE = 97
2756
+ ____exports.ModCallbackCustom.POST_TNT_UPDATE = 98
2755
2757
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_TNT_UPDATE] = "POST_TNT_UPDATE"
2756
- ____exports.ModCallbackCustom.POST_TRANSFORMATION = 98
2758
+ ____exports.ModCallbackCustom.POST_TRANSFORMATION = 99
2757
2759
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_TRANSFORMATION] = "POST_TRANSFORMATION"
2758
- ____exports.ModCallbackCustom.POST_TRINKET_BREAK = 99
2760
+ ____exports.ModCallbackCustom.POST_TRINKET_BREAK = 100
2759
2761
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_TRINKET_BREAK] = "POST_TRINKET_BREAK"
2760
- ____exports.ModCallbackCustom.PRE_BERSERK_DEATH = 100
2762
+ ____exports.ModCallbackCustom.PRE_BERSERK_DEATH = 101
2761
2763
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.PRE_BERSERK_DEATH] = "PRE_BERSERK_DEATH"
2762
- ____exports.ModCallbackCustom.PRE_CUSTOM_REVIVE = 101
2764
+ ____exports.ModCallbackCustom.PRE_CUSTOM_REVIVE = 102
2763
2765
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.PRE_CUSTOM_REVIVE] = "PRE_CUSTOM_REVIVE"
2764
- ____exports.ModCallbackCustom.PRE_ENTITY_SPAWN_FILTER = 102
2766
+ ____exports.ModCallbackCustom.PRE_ENTITY_SPAWN_FILTER = 103
2765
2767
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.PRE_ENTITY_SPAWN_FILTER] = "PRE_ENTITY_SPAWN_FILTER"
2766
- ____exports.ModCallbackCustom.PRE_GET_PEDESTAL = 103
2768
+ ____exports.ModCallbackCustom.PRE_GET_PEDESTAL = 104
2767
2769
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.PRE_GET_PEDESTAL] = "PRE_GET_PEDESTAL"
2768
- ____exports.ModCallbackCustom.PRE_ITEM_PICKUP = 104
2770
+ ____exports.ModCallbackCustom.PRE_ITEM_PICKUP = 105
2769
2771
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.PRE_ITEM_PICKUP] = "PRE_ITEM_PICKUP"
2770
- ____exports.ModCallbackCustom.PRE_NEW_LEVEL = 105
2772
+ ____exports.ModCallbackCustom.PRE_NEW_LEVEL = 106
2771
2773
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.PRE_NEW_LEVEL] = "PRE_NEW_LEVEL"
2772
- ____exports.ModCallbackCustom.PRE_NPC_COLLISION_FILTER = 106
2774
+ ____exports.ModCallbackCustom.PRE_NPC_COLLISION_FILTER = 107
2773
2775
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.PRE_NPC_COLLISION_FILTER] = "PRE_NPC_COLLISION_FILTER"
2774
- ____exports.ModCallbackCustom.PRE_NPC_UPDATE_FILTER = 107
2776
+ ____exports.ModCallbackCustom.PRE_NPC_UPDATE_FILTER = 108
2775
2777
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.PRE_NPC_UPDATE_FILTER] = "PRE_NPC_UPDATE_FILTER"
2776
- ____exports.ModCallbackCustom.PRE_ROOM_ENTITY_SPAWN_FILTER = 108
2778
+ ____exports.ModCallbackCustom.PRE_ROOM_ENTITY_SPAWN_FILTER = 109
2777
2779
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.PRE_ROOM_ENTITY_SPAWN_FILTER] = "PRE_ROOM_ENTITY_SPAWN_FILTER"
2778
2780
  return ____exports
2779
2781
  end,
@@ -20378,6 +20380,54 @@ end
20378
20380
  function ____exports.isTrinket(self, pickup)
20379
20381
  return pickup.Type == EntityType.PICKUP and pickup.Variant == PickupVariant.TRINKET
20380
20382
  end
20383
+ return ____exports
20384
+ end,
20385
+ ["src.arrays.cachedEnumValues"] = function(...)
20386
+ local ____exports = {}
20387
+ local ____isaac_2Dtypescript_2Ddefinitions = require("lua_modules.isaac-typescript-definitions.dist.src.index")
20388
+ local ActiveSlot = ____isaac_2Dtypescript_2Ddefinitions.ActiveSlot
20389
+ local CacheFlag = ____isaac_2Dtypescript_2Ddefinitions.CacheFlag
20390
+ local ControllerIndex = ____isaac_2Dtypescript_2Ddefinitions.ControllerIndex
20391
+ local DoorSlot = ____isaac_2Dtypescript_2Ddefinitions.DoorSlot
20392
+ local DoorSlotFlag = ____isaac_2Dtypescript_2Ddefinitions.DoorSlotFlag
20393
+ local GridEntityType = ____isaac_2Dtypescript_2Ddefinitions.GridEntityType
20394
+ local GridEntityXMLType = ____isaac_2Dtypescript_2Ddefinitions.GridEntityXMLType
20395
+ local ItemConfigCardType = ____isaac_2Dtypescript_2Ddefinitions.ItemConfigCardType
20396
+ local ItemConfigTag = ____isaac_2Dtypescript_2Ddefinitions.ItemConfigTag
20397
+ local Keyboard = ____isaac_2Dtypescript_2Ddefinitions.Keyboard
20398
+ local PillColor = ____isaac_2Dtypescript_2Ddefinitions.PillColor
20399
+ local PlayerForm = ____isaac_2Dtypescript_2Ddefinitions.PlayerForm
20400
+ local PocketItemSlot = ____isaac_2Dtypescript_2Ddefinitions.PocketItemSlot
20401
+ local RoomShape = ____isaac_2Dtypescript_2Ddefinitions.RoomShape
20402
+ local SoundEffect = ____isaac_2Dtypescript_2Ddefinitions.SoundEffect
20403
+ local TrinketSlot = ____isaac_2Dtypescript_2Ddefinitions.TrinketSlot
20404
+ local ____HealthType = require("src.enums.HealthType")
20405
+ local HealthType = ____HealthType.HealthType
20406
+ local ____SerializationBrand = require("src.enums.SerializationBrand")
20407
+ local SerializationBrand = ____SerializationBrand.SerializationBrand
20408
+ local ____StatType = require("src.enums.StatType")
20409
+ local StatType = ____StatType.StatType
20410
+ local ____enums = require("src.functions.enums")
20411
+ local getEnumValues = ____enums.getEnumValues
20412
+ ____exports.ACTIVE_SLOT_VALUES = getEnumValues(nil, ActiveSlot)
20413
+ ____exports.CACHE_FLAG_VALUES = getEnumValues(nil, CacheFlag)
20414
+ ____exports.CONTROLLER_INDEX_VALUES = getEnumValues(nil, ControllerIndex)
20415
+ ____exports.DOOR_SLOT_FLAG_VALUES = getEnumValues(nil, DoorSlotFlag)
20416
+ ____exports.DOOR_SLOT_VALUES = getEnumValues(nil, DoorSlot)
20417
+ ____exports.GRID_ENTITY_TYPE_VALUES = getEnumValues(nil, GridEntityType)
20418
+ ____exports.GRID_ENTITY_XML_TYPE_VALUES = getEnumValues(nil, GridEntityXMLType)
20419
+ ____exports.ITEM_CONFIG_TAG_VALUES = getEnumValues(nil, ItemConfigTag)
20420
+ ____exports.ITEM_CONFIG_CARD_TYPE_VALUES = getEnumValues(nil, ItemConfigCardType)
20421
+ ____exports.KEYBOARD_VALUES = getEnumValues(nil, Keyboard)
20422
+ ____exports.HEALTH_TYPE_VALUES = getEnumValues(nil, HealthType)
20423
+ ____exports.PILL_COLOR_VALUES = getEnumValues(nil, PillColor)
20424
+ ____exports.PLAYER_FORM_VALUES = getEnumValues(nil, PlayerForm)
20425
+ ____exports.POCKET_ITEM_SLOT_VALUES = getEnumValues(nil, PocketItemSlot)
20426
+ ____exports.ROOM_SHAPE_VALUES = getEnumValues(nil, RoomShape)
20427
+ ____exports.SERIALIZATION_BRAND_VALUES = getEnumValues(nil, SerializationBrand)
20428
+ ____exports.SOUND_EFFECT_VALUES = getEnumValues(nil, SoundEffect)
20429
+ ____exports.STAT_TYPE_VALUES = getEnumValues(nil, StatType)
20430
+ ____exports.TRINKET_SLOT_VALUES = getEnumValues(nil, TrinketSlot)
20381
20431
  return ____exports
20382
20432
  end,
20383
20433
  ["src.objects.doorSlotFlagToDoorSlot"] = function(...)
@@ -20659,12 +20709,14 @@ local __TS__ObjectEntries = ____lualib.__TS__ObjectEntries
20659
20709
  local ____exports = {}
20660
20710
  local ____isaac_2Dtypescript_2Ddefinitions = require("lua_modules.isaac-typescript-definitions.dist.src.index")
20661
20711
  local DoorSlot = ____isaac_2Dtypescript_2Ddefinitions.DoorSlot
20662
- local DoorSlotFlag = ____isaac_2Dtypescript_2Ddefinitions.DoorSlotFlag
20663
20712
  local DoorState = ____isaac_2Dtypescript_2Ddefinitions.DoorState
20664
20713
  local DoorVariant = ____isaac_2Dtypescript_2Ddefinitions.DoorVariant
20665
20714
  local GridEntityType = ____isaac_2Dtypescript_2Ddefinitions.GridEntityType
20666
20715
  local GridRoom = ____isaac_2Dtypescript_2Ddefinitions.GridRoom
20667
20716
  local RoomType = ____isaac_2Dtypescript_2Ddefinitions.RoomType
20717
+ local ____cachedEnumValues = require("src.arrays.cachedEnumValues")
20718
+ local DOOR_SLOT_FLAG_VALUES = ____cachedEnumValues.DOOR_SLOT_FLAG_VALUES
20719
+ local DOOR_SLOT_VALUES = ____cachedEnumValues.DOOR_SLOT_VALUES
20668
20720
  local ____cachedClasses = require("src.core.cachedClasses")
20669
20721
  local game = ____cachedClasses.game
20670
20722
  local ____constants = require("src.core.constants")
@@ -20686,8 +20738,6 @@ local ____bitwise = require("src.functions.bitwise")
20686
20738
  local arrayToBitFlags = ____bitwise.arrayToBitFlags
20687
20739
  local ____direction = require("src.functions.direction")
20688
20740
  local directionToVector = ____direction.directionToVector
20689
- local ____enums = require("src.functions.enums")
20690
- local getEnumValues = ____enums.getEnumValues
20691
20741
  local ____flag = require("src.functions.flag")
20692
20742
  local hasFlag = ____flag.hasFlag
20693
20743
  local ____tstlClass = require("src.functions.tstlClass")
@@ -20768,7 +20818,7 @@ function ____exports.doorSlotFlagToDoorSlot(self, doorSlotFlag)
20768
20818
  end
20769
20819
  function ____exports.doorSlotFlagsToDoorSlots(self, doorSlotFlags)
20770
20820
  local doorSlots = {}
20771
- for ____, doorSlotFlag in ipairs(getEnumValues(nil, DoorSlotFlag)) do
20821
+ for ____, doorSlotFlag in ipairs(DOOR_SLOT_FLAG_VALUES) do
20772
20822
  if hasFlag(nil, doorSlotFlags, doorSlotFlag) then
20773
20823
  local doorSlot = ____exports.doorSlotFlagToDoorSlot(nil, doorSlotFlag)
20774
20824
  doorSlots[#doorSlots + 1] = doorSlot
@@ -20872,9 +20922,8 @@ function ____exports.getRoomShapeDoorSlotCoordinates(self, roomShape, doorSlot)
20872
20922
  end
20873
20923
  function ____exports.getUnusedDoorSlots(self)
20874
20924
  local room = game:GetRoom()
20875
- local doorSlots = getEnumValues(nil, DoorSlot)
20876
20925
  return __TS__ArrayFilter(
20877
- doorSlots,
20926
+ DOOR_SLOT_VALUES,
20878
20927
  function(____, doorSlot) return doorSlot ~= DoorSlot.NO_DOOR_SLOT and room:IsDoorSlotAllowed(doorSlot) and room:GetDoor(doorSlot) == nil end
20879
20928
  )
20880
20929
  end
@@ -20970,14 +21019,12 @@ local ____lualib = require("lualib_bundle")
20970
21019
  local Set = ____lualib.Set
20971
21020
  local __TS__New = ____lualib.__TS__New
20972
21021
  local ____exports = {}
20973
- local ____isaac_2Dtypescript_2Ddefinitions = require("lua_modules.isaac-typescript-definitions.dist.src.index")
20974
- local DoorSlotFlag = ____isaac_2Dtypescript_2Ddefinitions.DoorSlotFlag
21022
+ local ____cachedEnumValues = require("src.arrays.cachedEnumValues")
21023
+ local DOOR_SLOT_FLAG_VALUES = ____cachedEnumValues.DOOR_SLOT_FLAG_VALUES
20975
21024
  local ____cachedClasses = require("src.core.cachedClasses")
20976
21025
  local game = ____cachedClasses.game
20977
21026
  local ____doors = require("src.functions.doors")
20978
21027
  local doorSlotFlagToDoorSlot = ____doors.doorSlotFlagToDoorSlot
20979
- local ____enums = require("src.functions.enums")
20980
- local getEnumValues = ____enums.getEnumValues
20981
21028
  local ____flag = require("src.functions.flag")
20982
21029
  local hasFlag = ____flag.hasFlag
20983
21030
  function ____exports.getRoomData(self, roomGridIndex)
@@ -21010,8 +21057,7 @@ function ____exports.getRoomAllowedDoors(self, roomGridIndex)
21010
21057
  if roomData == nil then
21011
21058
  return allowedDoors
21012
21059
  end
21013
- local doorSlotFlags = getEnumValues(nil, DoorSlotFlag)
21014
- for ____, doorSlotFlag in ipairs(doorSlotFlags) do
21060
+ for ____, doorSlotFlag in ipairs(DOOR_SLOT_FLAG_VALUES) do
21015
21061
  if hasFlag(nil, roomData.Doors, doorSlotFlag) then
21016
21062
  local doorSlot = doorSlotFlagToDoorSlot(nil, doorSlotFlag)
21017
21063
  allowedDoors:add(doorSlot)
@@ -21976,8 +22022,10 @@ local ControllerIndex = ____isaac_2Dtypescript_2Ddefinitions.ControllerIndex
21976
22022
  local NullItemID = ____isaac_2Dtypescript_2Ddefinitions.NullItemID
21977
22023
  local PlayerForm = ____isaac_2Dtypescript_2Ddefinitions.PlayerForm
21978
22024
  local PlayerType = ____isaac_2Dtypescript_2Ddefinitions.PlayerType
21979
- local TrinketSlot = ____isaac_2Dtypescript_2Ddefinitions.TrinketSlot
21980
22025
  local TrinketType = ____isaac_2Dtypescript_2Ddefinitions.TrinketType
22026
+ local ____cachedEnumValues = require("src.arrays.cachedEnumValues")
22027
+ local ACTIVE_SLOT_VALUES = ____cachedEnumValues.ACTIVE_SLOT_VALUES
22028
+ local TRINKET_SLOT_VALUES = ____cachedEnumValues.TRINKET_SLOT_VALUES
21981
22029
  local ____cachedClasses = require("src.core.cachedClasses")
21982
22030
  local game = ____cachedClasses.game
21983
22031
  local itemConfig = ____cachedClasses.itemConfig
@@ -21989,8 +22037,6 @@ local getCharacterName = ____characters.getCharacterName
21989
22037
  local isVanillaCharacter = ____characters.isVanillaCharacter
21990
22038
  local ____collectibles = require("src.functions.collectibles")
21991
22039
  local getCollectibleMaxCharges = ____collectibles.getCollectibleMaxCharges
21992
- local ____enums = require("src.functions.enums")
21993
- local getEnumValues = ____enums.getEnumValues
21994
22040
  local ____playerIndex = require("src.functions.playerIndex")
21995
22041
  local getAllPlayers = ____playerIndex.getAllPlayers
21996
22042
  local getPlayerIndexVanilla = ____playerIndex.getPlayerIndexVanilla
@@ -22076,9 +22122,8 @@ function ____exports.dequeueItem(self, player)
22076
22122
  return true
22077
22123
  end
22078
22124
  function ____exports.getActiveItemSlot(self, player, collectibleType)
22079
- local activeSlots = getEnumValues(nil, ActiveSlot)
22080
22125
  return __TS__ArrayFind(
22081
- activeSlots,
22126
+ ACTIVE_SLOT_VALUES,
22082
22127
  function(____, activeSlot)
22083
22128
  local activeItem = player:GetActiveItem(activeSlot)
22084
22129
  return activeItem == collectibleType
@@ -22347,7 +22392,7 @@ function ____exports.playerHasForm(self, player, ...)
22347
22392
  )
22348
22393
  end
22349
22394
  function ____exports.removeAllActiveItems(self, player)
22350
- for ____, activeSlot in ipairs(getEnumValues(nil, ActiveSlot)) do
22395
+ for ____, activeSlot in ipairs(ACTIVE_SLOT_VALUES) do
22351
22396
  do
22352
22397
  local collectibleType = player:GetActiveItem(activeSlot)
22353
22398
  if collectibleType == CollectibleType.NULL then
@@ -22365,7 +22410,7 @@ function ____exports.removeAllActiveItems(self, player)
22365
22410
  end
22366
22411
  end
22367
22412
  function ____exports.removeAllPlayerTrinkets(self, player)
22368
- for ____, trinketSlot in ipairs(getEnumValues(nil, TrinketSlot)) do
22413
+ for ____, trinketSlot in ipairs(TRINKET_SLOT_VALUES) do
22369
22414
  do
22370
22415
  local trinketType = player:GetTrinket(trinketSlot)
22371
22416
  if trinketType == TrinketType.NULL then
@@ -25107,18 +25152,17 @@ local Map = ____lualib.Map
25107
25152
  local __TS__New = ____lualib.__TS__New
25108
25153
  local ____exports = {}
25109
25154
  local ____isaac_2Dtypescript_2Ddefinitions = require("lua_modules.isaac-typescript-definitions.dist.src.index")
25110
- local ActiveSlot = ____isaac_2Dtypescript_2Ddefinitions.ActiveSlot
25111
25155
  local EntityType = ____isaac_2Dtypescript_2Ddefinitions.EntityType
25112
25156
  local ModCallback = ____isaac_2Dtypescript_2Ddefinitions.ModCallback
25113
25157
  local SuckerVariant = ____isaac_2Dtypescript_2Ddefinitions.SuckerVariant
25158
+ local ____cachedEnumValues = require("src.arrays.cachedEnumValues")
25159
+ local ACTIVE_SLOT_VALUES = ____cachedEnumValues.ACTIVE_SLOT_VALUES
25114
25160
  local ____cachedClasses = require("src.core.cachedClasses")
25115
25161
  local game = ____cachedClasses.game
25116
25162
  local ____ModCallbackCustom = require("src.enums.ModCallbackCustom")
25117
25163
  local ModCallbackCustom = ____ModCallbackCustom.ModCallbackCustom
25118
25164
  local ____charge = require("src.functions.charge")
25119
25165
  local getTotalCharge = ____charge.getTotalCharge
25120
- local ____enums = require("src.functions.enums")
25121
- local getEnumValues = ____enums.getEnumValues
25122
25166
  local ____playerDataStructures = require("src.functions.playerDataStructures")
25123
25167
  local defaultMapGetPlayer = ____playerDataStructures.defaultMapGetPlayer
25124
25168
  local mapGetPlayer = ____playerDataStructures.mapGetPlayer
@@ -25162,7 +25206,7 @@ function PostItemDischarge.prototype.____constructor(self)
25162
25206
  self.postPEffectUpdateReordered = function(____, player)
25163
25207
  local activeItemMap = defaultMapGetPlayer(nil, self.v.run.playersActiveItemMap, player)
25164
25208
  local chargeMap = defaultMapGetPlayer(nil, self.v.run.playersActiveChargeMap, player)
25165
- for ____, activeSlot in ipairs(getEnumValues(nil, ActiveSlot)) do
25209
+ for ____, activeSlot in ipairs(ACTIVE_SLOT_VALUES) do
25166
25210
  do
25167
25211
  local currentActiveItem = player:GetActiveItem()
25168
25212
  local previousActiveItem = activeItemMap:get(activeSlot)
@@ -25234,6 +25278,294 @@ function PostItemPickup.prototype.____constructor(self)
25234
25278
  self.shouldFire = shouldFireItemPickup
25235
25279
  self.featuresUsed = {ISCFeature.ITEM_PICKUP_DETECTION}
25236
25280
  end
25281
+ return ____exports
25282
+ end,
25283
+ ["src.maps.keyboardToString"] = function(...)
25284
+ local ____lualib = require("lualib_bundle")
25285
+ local __TS__New = ____lualib.__TS__New
25286
+ local ____exports = {}
25287
+ local ____isaac_2Dtypescript_2Ddefinitions = require("lua_modules.isaac-typescript-definitions.dist.src.index")
25288
+ local Keyboard = ____isaac_2Dtypescript_2Ddefinitions.Keyboard
25289
+ local ____ReadonlyMap = require("src.types.ReadonlyMap")
25290
+ local ReadonlyMap = ____ReadonlyMap.ReadonlyMap
25291
+ ____exports.KEYBOARD_TO_STRING = __TS__New(ReadonlyMap, {
25292
+ {Keyboard.SPACE, {" ", " "}},
25293
+ {Keyboard.APOSTROPHE, {"'", "\""}},
25294
+ {Keyboard.COMMA, {",", "<"}},
25295
+ {Keyboard.MINUS, {"-", "_"}},
25296
+ {Keyboard.PERIOD, {".", ">"}},
25297
+ {Keyboard.SLASH, {"/", "?"}},
25298
+ {Keyboard.ZERO, {"0", ")"}},
25299
+ {Keyboard.ONE, {"1", "!"}},
25300
+ {Keyboard.TWO, {"2", "@"}},
25301
+ {Keyboard.THREE, {"3", "#"}},
25302
+ {Keyboard.FOUR, {"4", "$"}},
25303
+ {Keyboard.FIVE, {"5", "%"}},
25304
+ {Keyboard.SIX, {"6", "^"}},
25305
+ {Keyboard.SEVEN, {"7", "&"}},
25306
+ {Keyboard.EIGHT, {"8", "*"}},
25307
+ {Keyboard.NINE, {"9", "("}},
25308
+ {Keyboard.SEMICOLON, {";", ":"}},
25309
+ {Keyboard.EQUAL, {"=", "+"}},
25310
+ {Keyboard.A, {"a", "A"}},
25311
+ {Keyboard.B, {"b", "B"}},
25312
+ {Keyboard.C, {"c", "C"}},
25313
+ {Keyboard.D, {"d", "D"}},
25314
+ {Keyboard.E, {"e", "E"}},
25315
+ {Keyboard.F, {"f", "F"}},
25316
+ {Keyboard.G, {"g", "G"}},
25317
+ {Keyboard.H, {"h", "H"}},
25318
+ {Keyboard.I, {"i", "I"}},
25319
+ {Keyboard.J, {"j", "J"}},
25320
+ {Keyboard.K, {"k", "K"}},
25321
+ {Keyboard.L, {"l", "L"}},
25322
+ {Keyboard.M, {"m", "M"}},
25323
+ {Keyboard.N, {"n", "N"}},
25324
+ {Keyboard.O, {"o", "O"}},
25325
+ {Keyboard.P, {"p", "P"}},
25326
+ {Keyboard.Q, {"q", "Q"}},
25327
+ {Keyboard.R, {"r", "R"}},
25328
+ {Keyboard.S, {"s", "S"}},
25329
+ {Keyboard.T, {"t", "T"}},
25330
+ {Keyboard.U, {"u", "U"}},
25331
+ {Keyboard.V, {"v", "V"}},
25332
+ {Keyboard.W, {"w", "W"}},
25333
+ {Keyboard.X, {"x", "X"}},
25334
+ {Keyboard.Y, {"y", "Y"}},
25335
+ {Keyboard.Z, {"z", "Z"}},
25336
+ {Keyboard.KP_0, {"0", "0"}},
25337
+ {Keyboard.KP_1, {"1", "1"}},
25338
+ {Keyboard.KP_2, {"2", "2"}},
25339
+ {Keyboard.KP_3, {"3", "3"}},
25340
+ {Keyboard.KP_4, {"4", "4"}},
25341
+ {Keyboard.KP_5, {"5", "5"}},
25342
+ {Keyboard.KP_6, {"6", "6"}},
25343
+ {Keyboard.KP_7, {"7", "7"}},
25344
+ {Keyboard.KP_8, {"8", "8"}},
25345
+ {Keyboard.KP_9, {"9", "9"}},
25346
+ {Keyboard.KP_DECIMAL, {".", "."}},
25347
+ {Keyboard.KP_DIVIDE, {"/", "/"}},
25348
+ {Keyboard.KP_MULTIPLY, {"*", "*"}},
25349
+ {Keyboard.KP_SUBTRACT, {"-", "-"}},
25350
+ {Keyboard.KP_ADD, {"+", "+"}},
25351
+ {Keyboard.LEFT_BRACKET, {"[", "{"}},
25352
+ {Keyboard.BACKSLASH, {"\\", "|"}},
25353
+ {Keyboard.RIGHT_BRACKET, {"]", "}"}},
25354
+ {Keyboard.GRAVE_ACCENT, {"`", "~"}}
25355
+ })
25356
+ return ____exports
25357
+ end,
25358
+ ["src.functions.input"] = function(...)
25359
+ local ____lualib = require("lualib_bundle")
25360
+ local __TS__New = ____lualib.__TS__New
25361
+ local __TS__ArraySome = ____lualib.__TS__ArraySome
25362
+ local ____exports = {}
25363
+ local ____isaac_2Dtypescript_2Ddefinitions = require("lua_modules.isaac-typescript-definitions.dist.src.index")
25364
+ local ButtonAction = ____isaac_2Dtypescript_2Ddefinitions.ButtonAction
25365
+ local Controller = ____isaac_2Dtypescript_2Ddefinitions.Controller
25366
+ local ControllerIndex = ____isaac_2Dtypescript_2Ddefinitions.ControllerIndex
25367
+ local Keyboard = ____isaac_2Dtypescript_2Ddefinitions.Keyboard
25368
+ local ____cachedEnumValues = require("src.arrays.cachedEnumValues")
25369
+ local CONTROLLER_INDEX_VALUES = ____cachedEnumValues.CONTROLLER_INDEX_VALUES
25370
+ local ____keyboardToString = require("src.maps.keyboardToString")
25371
+ local KEYBOARD_TO_STRING = ____keyboardToString.KEYBOARD_TO_STRING
25372
+ local ____ReadonlySet = require("src.types.ReadonlySet")
25373
+ local ReadonlySet = ____ReadonlySet.ReadonlySet
25374
+ local ____string = require("src.functions.string")
25375
+ local trimPrefix = ____string.trimPrefix
25376
+ local MODIFIER_KEYS = {
25377
+ Keyboard.LEFT_SHIFT,
25378
+ Keyboard.LEFT_CONTROL,
25379
+ Keyboard.LEFT_ALT,
25380
+ Keyboard.LEFT_SUPER,
25381
+ Keyboard.RIGHT_SHIFT,
25382
+ Keyboard.RIGHT_CONTROL,
25383
+ Keyboard.RIGHT_ALT,
25384
+ Keyboard.RIGHT_SUPER
25385
+ }
25386
+ local MOVEMENT_ACTIONS = {ButtonAction.LEFT, ButtonAction.RIGHT, ButtonAction.UP, ButtonAction.DOWN}
25387
+ ____exports.MOVEMENT_ACTIONS_SET = __TS__New(ReadonlySet, MOVEMENT_ACTIONS)
25388
+ local SHOOTING_ACTIONS = {ButtonAction.SHOOT_LEFT, ButtonAction.SHOOT_RIGHT, ButtonAction.SHOOT_UP, ButtonAction.SHOOT_DOWN}
25389
+ ____exports.SHOOTING_ACTIONS_SET = __TS__New(ReadonlySet, SHOOTING_ACTIONS)
25390
+ function ____exports.controllerToString(self, controller)
25391
+ local key = Controller[controller]
25392
+ if key == nil then
25393
+ return nil
25394
+ end
25395
+ return trimPrefix(nil, key, "BUTTON_")
25396
+ end
25397
+ function ____exports.getMoveActions(self)
25398
+ return ____exports.MOVEMENT_ACTIONS_SET
25399
+ end
25400
+ function ____exports.getShootActions(self)
25401
+ return ____exports.SHOOTING_ACTIONS_SET
25402
+ end
25403
+ function ____exports.isActionPressed(self, controllerIndex, ...)
25404
+ local buttonActions = {...}
25405
+ return __TS__ArraySome(
25406
+ buttonActions,
25407
+ function(____, buttonAction) return Input.IsActionPressed(buttonAction, controllerIndex) end
25408
+ )
25409
+ end
25410
+ function ____exports.isActionPressedOnAnyInput(self, ...)
25411
+ local buttonActions = {...}
25412
+ return __TS__ArraySome(
25413
+ CONTROLLER_INDEX_VALUES,
25414
+ function(____, controllerIndex) return ____exports.isActionPressed(
25415
+ nil,
25416
+ controllerIndex,
25417
+ table.unpack(buttonActions)
25418
+ ) end
25419
+ )
25420
+ end
25421
+ function ____exports.isActionTriggered(self, controllerIndex, ...)
25422
+ local buttonActions = {...}
25423
+ return __TS__ArraySome(
25424
+ buttonActions,
25425
+ function(____, buttonAction) return Input.IsActionTriggered(buttonAction, controllerIndex) end
25426
+ )
25427
+ end
25428
+ function ____exports.isActionTriggeredOnAnyInput(self, ...)
25429
+ local buttonActions = {...}
25430
+ return __TS__ArraySome(
25431
+ CONTROLLER_INDEX_VALUES,
25432
+ function(____, controllerIndex) return ____exports.isActionTriggered(
25433
+ nil,
25434
+ controllerIndex,
25435
+ table.unpack(buttonActions)
25436
+ ) end
25437
+ )
25438
+ end
25439
+ function ____exports.isKeyboardPressed(self, ...)
25440
+ local keys = {...}
25441
+ return __TS__ArraySome(
25442
+ keys,
25443
+ function(____, key) return Input.IsButtonPressed(key, ControllerIndex.KEYBOARD) end
25444
+ )
25445
+ end
25446
+ function ____exports.isModifierKeyPressed(self)
25447
+ return ____exports.isKeyboardPressed(
25448
+ nil,
25449
+ table.unpack(MODIFIER_KEYS)
25450
+ )
25451
+ end
25452
+ function ____exports.isMoveAction(self, buttonAction)
25453
+ return ____exports.MOVEMENT_ACTIONS_SET:has(buttonAction)
25454
+ end
25455
+ function ____exports.isMoveActionPressed(self, controllerIndex)
25456
+ return ____exports.isActionPressed(
25457
+ nil,
25458
+ controllerIndex,
25459
+ table.unpack(MOVEMENT_ACTIONS)
25460
+ )
25461
+ end
25462
+ function ____exports.isMoveActionPressedOnAnyInput(self)
25463
+ return __TS__ArraySome(
25464
+ MOVEMENT_ACTIONS,
25465
+ function(____, moveAction) return ____exports.isActionPressedOnAnyInput(nil, moveAction) end
25466
+ )
25467
+ end
25468
+ function ____exports.isMoveActionTriggered(self, controllerIndex)
25469
+ return ____exports.isActionTriggered(
25470
+ nil,
25471
+ controllerIndex,
25472
+ table.unpack(MOVEMENT_ACTIONS)
25473
+ )
25474
+ end
25475
+ function ____exports.isMoveActionTriggeredOnAnyInput(self)
25476
+ return __TS__ArraySome(
25477
+ MOVEMENT_ACTIONS,
25478
+ function(____, moveAction) return ____exports.isActionTriggeredOnAnyInput(nil, moveAction) end
25479
+ )
25480
+ end
25481
+ function ____exports.isShootAction(self, buttonAction)
25482
+ return ____exports.SHOOTING_ACTIONS_SET:has(buttonAction)
25483
+ end
25484
+ function ____exports.isShootActionPressed(self, controllerIndex)
25485
+ return ____exports.isActionPressed(
25486
+ nil,
25487
+ controllerIndex,
25488
+ table.unpack(SHOOTING_ACTIONS)
25489
+ )
25490
+ end
25491
+ function ____exports.isShootActionPressedOnAnyInput(self)
25492
+ return __TS__ArraySome(
25493
+ SHOOTING_ACTIONS,
25494
+ function(____, shootAction) return ____exports.isActionPressedOnAnyInput(nil, shootAction) end
25495
+ )
25496
+ end
25497
+ function ____exports.isShootActionTriggered(self, controllerIndex)
25498
+ return ____exports.isActionTriggered(
25499
+ nil,
25500
+ controllerIndex,
25501
+ table.unpack(SHOOTING_ACTIONS)
25502
+ )
25503
+ end
25504
+ function ____exports.isShootActionTriggeredOnAnyInput(self)
25505
+ return __TS__ArraySome(
25506
+ SHOOTING_ACTIONS,
25507
+ function(____, shootAction) return ____exports.isActionTriggeredOnAnyInput(nil, shootAction) end
25508
+ )
25509
+ end
25510
+ function ____exports.keyboardToString(self, keyboard, uppercase)
25511
+ local tuple = KEYBOARD_TO_STRING:get(keyboard)
25512
+ if tuple == nil then
25513
+ return nil
25514
+ end
25515
+ local lowercaseCharacter, uppercaseCharacter = table.unpack(tuple)
25516
+ return uppercase and uppercaseCharacter or lowercaseCharacter
25517
+ end
25518
+ return ____exports
25519
+ end,
25520
+ ["src.classes.callbacks.PostKeyboardPressed"] = function(...)
25521
+ local ____lualib = require("lualib_bundle")
25522
+ local __TS__Class = ____lualib.__TS__Class
25523
+ local __TS__ClassExtends = ____lualib.__TS__ClassExtends
25524
+ local Set = ____lualib.Set
25525
+ local __TS__New = ____lualib.__TS__New
25526
+ local __TS__Iterator = ____lualib.__TS__Iterator
25527
+ local ____exports = {}
25528
+ local ____isaac_2Dtypescript_2Ddefinitions = require("lua_modules.isaac-typescript-definitions.dist.src.index")
25529
+ local ModCallback = ____isaac_2Dtypescript_2Ddefinitions.ModCallback
25530
+ local ____cachedEnumValues = require("src.arrays.cachedEnumValues")
25531
+ local KEYBOARD_VALUES = ____cachedEnumValues.KEYBOARD_VALUES
25532
+ local ____input = require("src.functions.input")
25533
+ local isKeyboardPressed = ____input.isKeyboardPressed
25534
+ local ____CustomCallback = require("src.classes.private.CustomCallback")
25535
+ local CustomCallback = ____CustomCallback.CustomCallback
25536
+ ____exports.PostKeyboardPressed = __TS__Class()
25537
+ local PostKeyboardPressed = ____exports.PostKeyboardPressed
25538
+ PostKeyboardPressed.name = "PostKeyboardPressed"
25539
+ __TS__ClassExtends(PostKeyboardPressed, CustomCallback)
25540
+ function PostKeyboardPressed.prototype.____constructor(self)
25541
+ CustomCallback.prototype.____constructor(self)
25542
+ self.v = {run = {pressedKeys = __TS__New(Set)}}
25543
+ self.shouldFire = function(____, fireArgs, optionalArgs)
25544
+ local keyboard = table.unpack(fireArgs)
25545
+ local callbackKeyboard = table.unpack(optionalArgs)
25546
+ return callbackKeyboard == nil or callbackKeyboard == keyboard
25547
+ end
25548
+ self.postRender = function()
25549
+ for ____, keyboard in __TS__Iterator(self.v.run.pressedKeys) do
25550
+ if not isKeyboardPressed(nil, keyboard) then
25551
+ self.v.run.pressedKeys:delete(keyboard)
25552
+ end
25553
+ end
25554
+ for ____, keyboard in ipairs(KEYBOARD_VALUES) do
25555
+ do
25556
+ if self.v.run.pressedKeys:has(keyboard) then
25557
+ goto __continue8
25558
+ end
25559
+ if isKeyboardPressed(nil, keyboard) then
25560
+ self.v.run.pressedKeys:add(keyboard)
25561
+ self:fire(keyboard)
25562
+ end
25563
+ end
25564
+ ::__continue8::
25565
+ end
25566
+ end
25567
+ self.callbacksUsed = {{ModCallback.POST_RENDER, self.postRender}}
25568
+ end
25237
25569
  return ____exports
25238
25570
  end,
25239
25571
  ["src.classes.callbacks.PostKnifeInitLate"] = function(...)
@@ -26746,11 +27078,12 @@ local __TS__ArrayMap = ____lualib.__TS__ArrayMap
26746
27078
  local __TS__ArrayForEach = ____lualib.__TS__ArrayForEach
26747
27079
  local ____exports = {}
26748
27080
  local ____isaac_2Dtypescript_2Ddefinitions = require("lua_modules.isaac-typescript-definitions.dist.src.index")
26749
- local ActiveSlot = ____isaac_2Dtypescript_2Ddefinitions.ActiveSlot
26750
27081
  local CollectibleType = ____isaac_2Dtypescript_2Ddefinitions.CollectibleType
26751
27082
  local HeartSubType = ____isaac_2Dtypescript_2Ddefinitions.HeartSubType
26752
27083
  local PlayerType = ____isaac_2Dtypescript_2Ddefinitions.PlayerType
26753
27084
  local TrinketType = ____isaac_2Dtypescript_2Ddefinitions.TrinketType
27085
+ local ____cachedEnumValues = require("src.arrays.cachedEnumValues")
27086
+ local ACTIVE_SLOT_VALUES = ____cachedEnumValues.ACTIVE_SLOT_VALUES
26754
27087
  local ____constants = require("src.core.constants")
26755
27088
  local MAX_PLAYER_HEART_CONTAINERS = ____constants.MAX_PLAYER_HEART_CONTAINERS
26756
27089
  local ____HealthType = require("src.enums.HealthType")
@@ -26763,8 +27096,6 @@ local ____characters = require("src.functions.characters")
26763
27096
  local getCharacterMaxHeartContainers = ____characters.getCharacterMaxHeartContainers
26764
27097
  local ____charge = require("src.functions.charge")
26765
27098
  local getTotalCharge = ____charge.getTotalCharge
26766
- local ____enums = require("src.functions.enums")
26767
- local getEnumValues = ____enums.getEnumValues
26768
27099
  local ____players = require("src.functions.players")
26769
27100
  local isCharacter = ____players.isCharacter
26770
27101
  local isKeeper = ____players.isKeeper
@@ -26827,7 +27158,7 @@ function ____exports.setPlayerHealth(self, player, playerHealth)
26827
27158
  ____exports.removeAllPlayerHealth(nil, player)
26828
27159
  local alabasterBoxes = {}
26829
27160
  if player:HasCollectible(CollectibleType.ALABASTER_BOX) then
26830
- for ____, activeSlot in ipairs(getEnumValues(nil, ActiveSlot)) do
27161
+ for ____, activeSlot in ipairs(ACTIVE_SLOT_VALUES) do
26831
27162
  local activeItem = player:GetActiveItem()
26832
27163
  if activeItem == CollectibleType.ALABASTER_BOX then
26833
27164
  local totalCharge = getTotalCharge(nil, player, activeSlot)
@@ -29237,12 +29568,10 @@ local __TS__ClassExtends = ____lualib.__TS__ClassExtends
29237
29568
  local Map = ____lualib.Map
29238
29569
  local __TS__New = ____lualib.__TS__New
29239
29570
  local ____exports = {}
29240
- local ____HealthType = require("src.enums.HealthType")
29241
- local HealthType = ____HealthType.HealthType
29571
+ local ____cachedEnumValues = require("src.arrays.cachedEnumValues")
29572
+ local HEALTH_TYPE_VALUES = ____cachedEnumValues.HEALTH_TYPE_VALUES
29242
29573
  local ____ModCallbackCustom = require("src.enums.ModCallbackCustom")
29243
29574
  local ModCallbackCustom = ____ModCallbackCustom.ModCallbackCustom
29244
- local ____enums = require("src.functions.enums")
29245
- local getEnumValues = ____enums.getEnumValues
29246
29575
  local ____playerHealth = require("src.functions.playerHealth")
29247
29576
  local getPlayerHealthType = ____playerHealth.getPlayerHealthType
29248
29577
  local ____playerIndex = require("src.functions.playerIndex")
@@ -29267,7 +29596,7 @@ function PostPlayerChangeHealth.prototype.____constructor(self)
29267
29596
  self.postPEffectReordered = function(____, player)
29268
29597
  local playerIndex = getPlayerIndex(nil, player, true)
29269
29598
  local playerHealthMap = self.v.run.playersHealthMap:getAndSetDefault(playerIndex)
29270
- for ____, healthType in ipairs(getEnumValues(nil, HealthType)) do
29599
+ for ____, healthType in ipairs(HEALTH_TYPE_VALUES) do
29271
29600
  local storedHealthValue = playerHealthMap:get(healthType)
29272
29601
  local currentHealthValue = getPlayerHealthType(nil, player, healthType)
29273
29602
  playerHealthMap:set(healthType, currentHealthValue)
@@ -29318,17 +29647,15 @@ local Map = ____lualib.Map
29318
29647
  local __TS__New = ____lualib.__TS__New
29319
29648
  local ____exports = {}
29320
29649
  local statEquals
29650
+ local ____cachedEnumValues = require("src.arrays.cachedEnumValues")
29651
+ local STAT_TYPE_VALUES = ____cachedEnumValues.STAT_TYPE_VALUES
29321
29652
  local ____ModCallbackCustom = require("src.enums.ModCallbackCustom")
29322
29653
  local ModCallbackCustom = ____ModCallbackCustom.ModCallbackCustom
29323
- local ____StatType = require("src.enums.StatType")
29324
- local StatType = ____StatType.StatType
29325
29654
  local ____bitSet128 = require("src.functions.bitSet128")
29326
29655
  local isBitSet128 = ____bitSet128.isBitSet128
29327
29656
  local ____color = require("src.functions.color")
29328
29657
  local colorEquals = ____color.colorEquals
29329
29658
  local isColor = ____color.isColor
29330
- local ____enums = require("src.functions.enums")
29331
- local getEnumValues = ____enums.getEnumValues
29332
29659
  local ____playerIndex = require("src.functions.playerIndex")
29333
29660
  local getPlayerIndex = ____playerIndex.getPlayerIndex
29334
29661
  local ____playerStats = require("src.functions.playerStats")
@@ -29382,7 +29709,7 @@ function PostPlayerChangeStat.prototype.____constructor(self)
29382
29709
  self.postPEffectReordered = function(____, player)
29383
29710
  local playerIndex = getPlayerIndex(nil, player, true)
29384
29711
  local playerStatMap = self.v.run.playersStatMap:getAndSetDefault(playerIndex)
29385
- for ____, statType in ipairs(getEnumValues(nil, StatType)) do
29712
+ for ____, statType in ipairs(STAT_TYPE_VALUES) do
29386
29713
  do
29387
29714
  local storedStatValue = playerStatMap:get(statType)
29388
29715
  local currentStatValue = getPlayerStat(nil, player, statType)
@@ -30597,12 +30924,10 @@ local __TS__ClassExtends = ____lualib.__TS__ClassExtends
30597
30924
  local Map = ____lualib.Map
30598
30925
  local __TS__New = ____lualib.__TS__New
30599
30926
  local ____exports = {}
30600
- local ____isaac_2Dtypescript_2Ddefinitions = require("lua_modules.isaac-typescript-definitions.dist.src.index")
30601
- local PlayerForm = ____isaac_2Dtypescript_2Ddefinitions.PlayerForm
30927
+ local ____cachedEnumValues = require("src.arrays.cachedEnumValues")
30928
+ local PLAYER_FORM_VALUES = ____cachedEnumValues.PLAYER_FORM_VALUES
30602
30929
  local ____ModCallbackCustom = require("src.enums.ModCallbackCustom")
30603
30930
  local ModCallbackCustom = ____ModCallbackCustom.ModCallbackCustom
30604
- local ____enums = require("src.functions.enums")
30605
- local getEnumValues = ____enums.getEnumValues
30606
30931
  local ____playerDataStructures = require("src.functions.playerDataStructures")
30607
30932
  local defaultMapGetPlayer = ____playerDataStructures.defaultMapGetPlayer
30608
30933
  local ____DefaultMap = require("src.classes.DefaultMap")
@@ -30626,7 +30951,7 @@ function PostTransformation.prototype.____constructor(self)
30626
30951
  end
30627
30952
  self.postPEffectUpdateReordered = function(____, player)
30628
30953
  local playerTransformationsMap = defaultMapGetPlayer(nil, self.v.run.playersTransformationsMap, player)
30629
- for ____, playerForm in ipairs(getEnumValues(nil, PlayerForm)) do
30954
+ for ____, playerForm in ipairs(PLAYER_FORM_VALUES) do
30630
30955
  local hasForm = player:HasPlayerForm(playerForm)
30631
30956
  local storedForm = playerTransformationsMap:get(playerForm)
30632
30957
  if storedForm == nil then
@@ -31220,6 +31545,11 @@ do
31220
31545
  local PostItemPickup = ____PostItemPickup.PostItemPickup
31221
31546
  ____exports.PostItemPickup = PostItemPickup
31222
31547
  end
31548
+ do
31549
+ local ____PostKeyboardPressed = require("src.classes.callbacks.PostKeyboardPressed")
31550
+ local PostKeyboardPressed = ____PostKeyboardPressed.PostKeyboardPressed
31551
+ ____exports.PostKeyboardPressed = PostKeyboardPressed
31552
+ end
31223
31553
  do
31224
31554
  local ____PostKnifeInitLate = require("src.classes.callbacks.PostKnifeInitLate")
31225
31555
  local PostKnifeInitLate = ____PostKnifeInitLate.PostKnifeInitLate
@@ -31605,6 +31935,7 @@ local MOD_CALLBACK_CUSTOM_TO_CLASS = {
31605
31935
  [ModCallbackCustom.POST_HOLY_MANTLE_REMOVED] = cc.PostHolyMantleRemoved,
31606
31936
  [ModCallbackCustom.POST_ITEM_DISCHARGE] = cc.PostItemDischarge,
31607
31937
  [ModCallbackCustom.POST_ITEM_PICKUP] = cc.PostItemPickup,
31938
+ [ModCallbackCustom.POST_KEYBOARD_PRESSED] = cc.PostKeyboardPressed,
31608
31939
  [ModCallbackCustom.POST_KNIFE_INIT_LATE] = cc.PostKnifeInitLate,
31609
31940
  [ModCallbackCustom.POST_LASER_INIT_LATE] = cc.PostLaserInitLate,
31610
31941
  [ModCallbackCustom.POST_NEW_LEVEL_REORDERED] = cc.PostNewLevelReordered,
@@ -33458,6 +33789,10 @@ local ItemConfigCardType = ____isaac_2Dtypescript_2Ddefinitions.ItemConfigCardTy
33458
33789
  local ItemConfigTag = ____isaac_2Dtypescript_2Ddefinitions.ItemConfigTag
33459
33790
  local PlayerForm = ____isaac_2Dtypescript_2Ddefinitions.PlayerForm
33460
33791
  local TrinketType = ____isaac_2Dtypescript_2Ddefinitions.TrinketType
33792
+ local ____cachedEnumValues = require("src.arrays.cachedEnumValues")
33793
+ local CACHE_FLAG_VALUES = ____cachedEnumValues.CACHE_FLAG_VALUES
33794
+ local ITEM_CONFIG_CARD_TYPE_VALUES = ____cachedEnumValues.ITEM_CONFIG_CARD_TYPE_VALUES
33795
+ local ITEM_CONFIG_TAG_VALUES = ____cachedEnumValues.ITEM_CONFIG_TAG_VALUES
33461
33796
  local ____cachedClasses = require("src.core.cachedClasses")
33462
33797
  local itemConfig = ____cachedClasses.itemConfig
33463
33798
  local ____constants = require("src.core.constants")
@@ -33477,8 +33812,6 @@ local isHiddenCollectible = ____collectibles.isHiddenCollectible
33477
33812
  local isPassiveCollectible = ____collectibles.isPassiveCollectible
33478
33813
  local ____collectibleTag = require("src.functions.collectibleTag")
33479
33814
  local collectibleHasTag = ____collectibleTag.collectibleHasTag
33480
- local ____enums = require("src.functions.enums")
33481
- local getEnumValues = ____enums.getEnumValues
33482
33815
  local ____flag = require("src.functions.flag")
33483
33816
  local getFlagName = ____flag.getFlagName
33484
33817
  local ____rng = require("src.functions.rng")
@@ -33666,14 +33999,14 @@ function ModdedElementSets.prototype.lazyInitTagToCollectibleTypesMap(self)
33666
33999
  if self.tagToCollectibleTypesMap.size > 0 then
33667
34000
  return
33668
34001
  end
33669
- for ____, itemConfigTag in ipairs(getEnumValues(nil, ItemConfigTag)) do
34002
+ for ____, itemConfigTag in ipairs(ITEM_CONFIG_TAG_VALUES) do
33670
34003
  self.tagToCollectibleTypesMap:set(
33671
34004
  itemConfigTag,
33672
34005
  __TS__New(Set)
33673
34006
  )
33674
34007
  end
33675
34008
  for ____, collectibleType in ipairs(self:getCollectibleArray()) do
33676
- for ____, itemConfigTag in ipairs(getEnumValues(nil, ItemConfigTag)) do
34009
+ for ____, itemConfigTag in ipairs(ITEM_CONFIG_TAG_VALUES) do
33677
34010
  do
33678
34011
  if not collectibleHasTag(nil, collectibleType, itemConfigTag) then
33679
34012
  goto __continue44
@@ -33693,7 +34026,7 @@ function ModdedElementSets.prototype.lazyInitCacheFlagToCollectibleTypesMap(self
33693
34026
  if self.cacheFlagToCollectibleTypesMap.size > 0 then
33694
34027
  return
33695
34028
  end
33696
- for ____, cacheFlag in ipairs(getEnumValues(nil, CacheFlag)) do
34029
+ for ____, cacheFlag in ipairs(CACHE_FLAG_VALUES) do
33697
34030
  local collectiblesSet = __TS__New(Set)
33698
34031
  for ____, collectibleType in ipairs(self:getCollectibleArray()) do
33699
34032
  if collectibleHasCacheFlag(nil, collectibleType, cacheFlag) then
@@ -33707,7 +34040,7 @@ function ModdedElementSets.prototype.lazyInitCacheFlagToTrinketTypesMap(self)
33707
34040
  if self.cacheFlagToTrinketTypesMap.size > 0 then
33708
34041
  return
33709
34042
  end
33710
- for ____, cacheFlag in ipairs(getEnumValues(nil, CacheFlag)) do
34043
+ for ____, cacheFlag in ipairs(CACHE_FLAG_VALUES) do
33711
34044
  local trinketsSet = __TS__New(Set)
33712
34045
  for ____, trinketType in ipairs(self.moddedElementDetection:getTrinketTypes()) do
33713
34046
  if trinketHasCacheFlag(nil, trinketType, cacheFlag) then
@@ -33773,7 +34106,7 @@ function ModdedElementSets.prototype.lazyInitCardTypes(self)
33773
34106
  if self.itemConfigCardTypeToCardTypeMap.size > 0 then
33774
34107
  return
33775
34108
  end
33776
- for ____, itemConfigCardType in ipairs(getEnumValues(nil, ItemConfigCardType)) do
34109
+ for ____, itemConfigCardType in ipairs(ITEM_CONFIG_CARD_TYPE_VALUES) do
33777
34110
  self.itemConfigCardTypeToCardTypeMap:set(
33778
34111
  itemConfigCardType,
33779
34112
  __TS__New(Set)
@@ -34116,20 +34449,19 @@ local __TS__Iterator = ____lualib.__TS__Iterator
34116
34449
  local __TS__ArraySort = ____lualib.__TS__ArraySort
34117
34450
  local ____exports = {}
34118
34451
  local ____isaac_2Dtypescript_2Ddefinitions = require("lua_modules.isaac-typescript-definitions.dist.src.index")
34119
- local ActiveSlot = ____isaac_2Dtypescript_2Ddefinitions.ActiveSlot
34120
34452
  local CollectibleType = ____isaac_2Dtypescript_2Ddefinitions.CollectibleType
34121
34453
  local DamageFlag = ____isaac_2Dtypescript_2Ddefinitions.DamageFlag
34122
34454
  local ItemType = ____isaac_2Dtypescript_2Ddefinitions.ItemType
34123
34455
  local ModCallback = ____isaac_2Dtypescript_2Ddefinitions.ModCallback
34124
34456
  local PlayerType = ____isaac_2Dtypescript_2Ddefinitions.PlayerType
34457
+ local ____cachedEnumValues = require("src.arrays.cachedEnumValues")
34458
+ local ACTIVE_SLOT_VALUES = ____cachedEnumValues.ACTIVE_SLOT_VALUES
34125
34459
  local ____ISCFeature = require("src.enums.ISCFeature")
34126
34460
  local ISCFeature = ____ISCFeature.ISCFeature
34127
34461
  local ____ModCallbackCustom = require("src.enums.ModCallbackCustom")
34128
34462
  local ModCallbackCustom = ____ModCallbackCustom.ModCallbackCustom
34129
34463
  local ____array = require("src.functions.array")
34130
34464
  local arrayEquals = ____array.arrayEquals
34131
- local ____enums = require("src.functions.enums")
34132
- local getEnumValues = ____enums.getEnumValues
34133
34465
  local ____flag = require("src.functions.flag")
34134
34466
  local hasFlag = ____flag.hasFlag
34135
34467
  local ____playerDataStructures = require("src.functions.playerDataStructures")
@@ -34252,7 +34584,7 @@ function PlayerCollectibleDetection.prototype.checkActiveItemsChanged(self, play
34252
34584
  local activeItemMap = defaultMapGetPlayer(nil, self.v.run.playersActiveItemMap, player)
34253
34585
  local oldCollectibleTypes = {}
34254
34586
  local newCollectibleTypes = {}
34255
- for ____, activeSlot in ipairs(getEnumValues(nil, ActiveSlot)) do
34587
+ for ____, activeSlot in ipairs(ACTIVE_SLOT_VALUES) do
34256
34588
  local oldCollectibleType = activeItemMap:get(activeSlot) or CollectibleType.NULL
34257
34589
  local newCollectibleType = player:GetActiveItem(activeSlot)
34258
34590
  activeItemMap:set(activeSlot, newCollectibleType)
@@ -35407,16 +35739,14 @@ local __TS__ArrayMap = ____lualib.__TS__ArrayMap
35407
35739
  local __TS__ArraySome = ____lualib.__TS__ArraySome
35408
35740
  local ____exports = {}
35409
35741
  local getSerializedTableType
35410
- local ____SerializationBrand = require("src.enums.SerializationBrand")
35411
- local SerializationBrand = ____SerializationBrand.SerializationBrand
35742
+ local ____cachedEnumValues = require("src.arrays.cachedEnumValues")
35743
+ local SERIALIZATION_BRAND_VALUES = ____cachedEnumValues.SERIALIZATION_BRAND_VALUES
35412
35744
  local ____isaacAPIClassTypeToBrand = require("src.objects.isaacAPIClassTypeToBrand")
35413
35745
  local ISAAC_API_CLASS_TYPE_TO_BRAND = ____isaacAPIClassTypeToBrand.ISAAC_API_CLASS_TYPE_TO_BRAND
35414
35746
  local ____isaacAPIClassTypeToFunctions = require("src.objects.isaacAPIClassTypeToFunctions")
35415
35747
  local ISAAC_API_CLASS_TYPE_TO_FUNCTIONS = ____isaacAPIClassTypeToFunctions.ISAAC_API_CLASS_TYPE_TO_FUNCTIONS
35416
35748
  local ____ReadonlySet = require("src.types.ReadonlySet")
35417
35749
  local ReadonlySet = ____ReadonlySet.ReadonlySet
35418
- local ____enums = require("src.functions.enums")
35419
- local getEnumValues = ____enums.getEnumValues
35420
35750
  local ____isaacAPIClass = require("src.functions.isaacAPIClass")
35421
35751
  local getIsaacAPIClassName = ____isaacAPIClass.getIsaacAPIClassName
35422
35752
  local ____types = require("src.functions.types")
@@ -35433,8 +35763,7 @@ function getSerializedTableType(self, serializedIsaacAPIClass)
35433
35763
  end
35434
35764
  return nil
35435
35765
  end
35436
- local SERIALIZATION_BRANDS = getEnumValues(nil, SerializationBrand)
35437
- local SERIALIZATION_BRAND_SET = __TS__New(ReadonlySet, SERIALIZATION_BRANDS)
35766
+ local SERIALIZATION_BRAND_SET = __TS__New(ReadonlySet, SERIALIZATION_BRAND_VALUES)
35438
35767
  function ____exports.copyIsaacAPIClass(self, isaacAPIClass)
35439
35768
  if not isUserdata(nil, isaacAPIClass) then
35440
35769
  error("Failed to copy an Isaac API class since the provided object was of type: " .. __TS__TypeOf(isaacAPIClass))
@@ -37435,245 +37764,6 @@ function CollectibleItemPoolType.prototype.getCollectibleItemPoolType(self, coll
37435
37764
  return itemPoolType == nil and getRoomItemPoolType(nil) or itemPoolType
37436
37765
  end
37437
37766
  __TS__Decorate({Exported}, CollectibleItemPoolType.prototype, "getCollectibleItemPoolType", true)
37438
- return ____exports
37439
- end,
37440
- ["src.maps.keyboardToString"] = function(...)
37441
- local ____lualib = require("lualib_bundle")
37442
- local __TS__New = ____lualib.__TS__New
37443
- local ____exports = {}
37444
- local ____isaac_2Dtypescript_2Ddefinitions = require("lua_modules.isaac-typescript-definitions.dist.src.index")
37445
- local Keyboard = ____isaac_2Dtypescript_2Ddefinitions.Keyboard
37446
- local ____ReadonlyMap = require("src.types.ReadonlyMap")
37447
- local ReadonlyMap = ____ReadonlyMap.ReadonlyMap
37448
- ____exports.KEYBOARD_TO_STRING = __TS__New(ReadonlyMap, {
37449
- {Keyboard.SPACE, {" ", " "}},
37450
- {Keyboard.APOSTROPHE, {"'", "\""}},
37451
- {Keyboard.COMMA, {",", "<"}},
37452
- {Keyboard.MINUS, {"-", "_"}},
37453
- {Keyboard.PERIOD, {".", ">"}},
37454
- {Keyboard.SLASH, {"/", "?"}},
37455
- {Keyboard.ZERO, {"0", ")"}},
37456
- {Keyboard.ONE, {"1", "!"}},
37457
- {Keyboard.TWO, {"2", "@"}},
37458
- {Keyboard.THREE, {"3", "#"}},
37459
- {Keyboard.FOUR, {"4", "$"}},
37460
- {Keyboard.FIVE, {"5", "%"}},
37461
- {Keyboard.SIX, {"6", "^"}},
37462
- {Keyboard.SEVEN, {"7", "&"}},
37463
- {Keyboard.EIGHT, {"8", "*"}},
37464
- {Keyboard.NINE, {"9", "("}},
37465
- {Keyboard.SEMICOLON, {";", ":"}},
37466
- {Keyboard.EQUAL, {"=", "+"}},
37467
- {Keyboard.A, {"a", "A"}},
37468
- {Keyboard.B, {"b", "B"}},
37469
- {Keyboard.C, {"c", "C"}},
37470
- {Keyboard.D, {"d", "D"}},
37471
- {Keyboard.E, {"e", "E"}},
37472
- {Keyboard.F, {"f", "F"}},
37473
- {Keyboard.G, {"g", "G"}},
37474
- {Keyboard.H, {"h", "H"}},
37475
- {Keyboard.I, {"i", "I"}},
37476
- {Keyboard.J, {"j", "J"}},
37477
- {Keyboard.K, {"k", "K"}},
37478
- {Keyboard.L, {"l", "L"}},
37479
- {Keyboard.M, {"m", "M"}},
37480
- {Keyboard.N, {"n", "N"}},
37481
- {Keyboard.O, {"o", "O"}},
37482
- {Keyboard.P, {"p", "P"}},
37483
- {Keyboard.Q, {"q", "Q"}},
37484
- {Keyboard.R, {"r", "R"}},
37485
- {Keyboard.S, {"s", "S"}},
37486
- {Keyboard.T, {"t", "T"}},
37487
- {Keyboard.U, {"u", "U"}},
37488
- {Keyboard.V, {"v", "V"}},
37489
- {Keyboard.W, {"w", "W"}},
37490
- {Keyboard.X, {"x", "X"}},
37491
- {Keyboard.Y, {"y", "Y"}},
37492
- {Keyboard.Z, {"z", "Z"}},
37493
- {Keyboard.KP_0, {"0", "0"}},
37494
- {Keyboard.KP_1, {"1", "1"}},
37495
- {Keyboard.KP_2, {"2", "2"}},
37496
- {Keyboard.KP_3, {"3", "3"}},
37497
- {Keyboard.KP_4, {"4", "4"}},
37498
- {Keyboard.KP_5, {"5", "5"}},
37499
- {Keyboard.KP_6, {"6", "6"}},
37500
- {Keyboard.KP_7, {"7", "7"}},
37501
- {Keyboard.KP_8, {"8", "8"}},
37502
- {Keyboard.KP_9, {"9", "9"}},
37503
- {Keyboard.KP_DECIMAL, {".", "."}},
37504
- {Keyboard.KP_DIVIDE, {"/", "/"}},
37505
- {Keyboard.KP_MULTIPLY, {"*", "*"}},
37506
- {Keyboard.KP_SUBTRACT, {"-", "-"}},
37507
- {Keyboard.KP_ADD, {"+", "+"}},
37508
- {Keyboard.LEFT_BRACKET, {"[", "{"}},
37509
- {Keyboard.BACKSLASH, {"\\", "|"}},
37510
- {Keyboard.RIGHT_BRACKET, {"]", "}"}},
37511
- {Keyboard.GRAVE_ACCENT, {"`", "~"}}
37512
- })
37513
- return ____exports
37514
- end,
37515
- ["src.functions.input"] = function(...)
37516
- local ____lualib = require("lualib_bundle")
37517
- local __TS__New = ____lualib.__TS__New
37518
- local __TS__ArraySome = ____lualib.__TS__ArraySome
37519
- local ____exports = {}
37520
- local ____isaac_2Dtypescript_2Ddefinitions = require("lua_modules.isaac-typescript-definitions.dist.src.index")
37521
- local ButtonAction = ____isaac_2Dtypescript_2Ddefinitions.ButtonAction
37522
- local Controller = ____isaac_2Dtypescript_2Ddefinitions.Controller
37523
- local ControllerIndex = ____isaac_2Dtypescript_2Ddefinitions.ControllerIndex
37524
- local Keyboard = ____isaac_2Dtypescript_2Ddefinitions.Keyboard
37525
- local ____keyboardToString = require("src.maps.keyboardToString")
37526
- local KEYBOARD_TO_STRING = ____keyboardToString.KEYBOARD_TO_STRING
37527
- local ____ReadonlySet = require("src.types.ReadonlySet")
37528
- local ReadonlySet = ____ReadonlySet.ReadonlySet
37529
- local ____enums = require("src.functions.enums")
37530
- local getEnumValues = ____enums.getEnumValues
37531
- local ____string = require("src.functions.string")
37532
- local trimPrefix = ____string.trimPrefix
37533
- local MODIFIER_KEYS = {
37534
- Keyboard.LEFT_SHIFT,
37535
- Keyboard.LEFT_CONTROL,
37536
- Keyboard.LEFT_ALT,
37537
- Keyboard.LEFT_SUPER,
37538
- Keyboard.RIGHT_SHIFT,
37539
- Keyboard.RIGHT_CONTROL,
37540
- Keyboard.RIGHT_ALT,
37541
- Keyboard.RIGHT_SUPER
37542
- }
37543
- local MOVEMENT_ACTIONS = {ButtonAction.LEFT, ButtonAction.RIGHT, ButtonAction.UP, ButtonAction.DOWN}
37544
- ____exports.MOVEMENT_ACTIONS_SET = __TS__New(ReadonlySet, MOVEMENT_ACTIONS)
37545
- local SHOOTING_ACTIONS = {ButtonAction.SHOOT_LEFT, ButtonAction.SHOOT_RIGHT, ButtonAction.SHOOT_UP, ButtonAction.SHOOT_DOWN}
37546
- ____exports.SHOOTING_ACTIONS_SET = __TS__New(ReadonlySet, SHOOTING_ACTIONS)
37547
- function ____exports.controllerToString(self, controller)
37548
- local key = Controller[controller]
37549
- if key == nil then
37550
- return nil
37551
- end
37552
- return trimPrefix(nil, key, "BUTTON_")
37553
- end
37554
- function ____exports.getMoveActions(self)
37555
- return ____exports.MOVEMENT_ACTIONS_SET
37556
- end
37557
- function ____exports.getShootActions(self)
37558
- return ____exports.SHOOTING_ACTIONS_SET
37559
- end
37560
- function ____exports.isActionPressed(self, controllerIndex, ...)
37561
- local buttonActions = {...}
37562
- return __TS__ArraySome(
37563
- buttonActions,
37564
- function(____, buttonAction) return Input.IsActionPressed(buttonAction, controllerIndex) end
37565
- )
37566
- end
37567
- function ____exports.isActionPressedOnAnyInput(self, ...)
37568
- local buttonActions = {...}
37569
- local controllerIndexes = getEnumValues(nil, ControllerIndex)
37570
- return __TS__ArraySome(
37571
- controllerIndexes,
37572
- function(____, controllerIndex) return ____exports.isActionPressed(
37573
- nil,
37574
- controllerIndex,
37575
- table.unpack(buttonActions)
37576
- ) end
37577
- )
37578
- end
37579
- function ____exports.isActionTriggered(self, controllerIndex, ...)
37580
- local buttonActions = {...}
37581
- return __TS__ArraySome(
37582
- buttonActions,
37583
- function(____, buttonAction) return Input.IsActionTriggered(buttonAction, controllerIndex) end
37584
- )
37585
- end
37586
- function ____exports.isActionTriggeredOnAnyInput(self, ...)
37587
- local buttonActions = {...}
37588
- local controllerIndexes = getEnumValues(nil, ControllerIndex)
37589
- return __TS__ArraySome(
37590
- controllerIndexes,
37591
- function(____, controllerIndex) return ____exports.isActionTriggered(
37592
- nil,
37593
- controllerIndex,
37594
- table.unpack(buttonActions)
37595
- ) end
37596
- )
37597
- end
37598
- function ____exports.isKeyboardPressed(self, ...)
37599
- local keys = {...}
37600
- return __TS__ArraySome(
37601
- keys,
37602
- function(____, key) return Input.IsButtonPressed(key, ControllerIndex.KEYBOARD) end
37603
- )
37604
- end
37605
- function ____exports.isModifierKeyPressed(self)
37606
- return ____exports.isKeyboardPressed(
37607
- nil,
37608
- table.unpack(MODIFIER_KEYS)
37609
- )
37610
- end
37611
- function ____exports.isMoveAction(self, buttonAction)
37612
- return ____exports.MOVEMENT_ACTIONS_SET:has(buttonAction)
37613
- end
37614
- function ____exports.isMoveActionPressed(self, controllerIndex)
37615
- return ____exports.isActionPressed(
37616
- nil,
37617
- controllerIndex,
37618
- table.unpack(MOVEMENT_ACTIONS)
37619
- )
37620
- end
37621
- function ____exports.isMoveActionPressedOnAnyInput(self)
37622
- return __TS__ArraySome(
37623
- MOVEMENT_ACTIONS,
37624
- function(____, moveAction) return ____exports.isActionPressedOnAnyInput(nil, moveAction) end
37625
- )
37626
- end
37627
- function ____exports.isMoveActionTriggered(self, controllerIndex)
37628
- return ____exports.isActionTriggered(
37629
- nil,
37630
- controllerIndex,
37631
- table.unpack(MOVEMENT_ACTIONS)
37632
- )
37633
- end
37634
- function ____exports.isMoveActionTriggeredOnAnyInput(self)
37635
- return __TS__ArraySome(
37636
- MOVEMENT_ACTIONS,
37637
- function(____, moveAction) return ____exports.isActionTriggeredOnAnyInput(nil, moveAction) end
37638
- )
37639
- end
37640
- function ____exports.isShootAction(self, buttonAction)
37641
- return ____exports.SHOOTING_ACTIONS_SET:has(buttonAction)
37642
- end
37643
- function ____exports.isShootActionPressed(self, controllerIndex)
37644
- return ____exports.isActionPressed(
37645
- nil,
37646
- controllerIndex,
37647
- table.unpack(SHOOTING_ACTIONS)
37648
- )
37649
- end
37650
- function ____exports.isShootActionPressedOnAnyInput(self)
37651
- return __TS__ArraySome(
37652
- SHOOTING_ACTIONS,
37653
- function(____, shootAction) return ____exports.isActionPressedOnAnyInput(nil, shootAction) end
37654
- )
37655
- end
37656
- function ____exports.isShootActionTriggered(self, controllerIndex)
37657
- return ____exports.isActionTriggered(
37658
- nil,
37659
- controllerIndex,
37660
- table.unpack(SHOOTING_ACTIONS)
37661
- )
37662
- end
37663
- function ____exports.isShootActionTriggeredOnAnyInput(self)
37664
- return __TS__ArraySome(
37665
- SHOOTING_ACTIONS,
37666
- function(____, shootAction) return ____exports.isActionTriggeredOnAnyInput(nil, shootAction) end
37667
- )
37668
- end
37669
- function ____exports.keyboardToString(self, keyboard, uppercase)
37670
- local tuple = KEYBOARD_TO_STRING:get(keyboard)
37671
- if tuple == nil then
37672
- return nil
37673
- end
37674
- local lowercaseCharacter, uppercaseCharacter = table.unpack(tuple)
37675
- return uppercase and uppercaseCharacter or lowercaseCharacter
37676
- end
37677
37767
  return ____exports
37678
37768
  end,
37679
37769
  ["src.classes.features.other.CustomHotkeys"] = function(...)
@@ -38270,8 +38360,8 @@ return ____exports
38270
38360
  end,
38271
38361
  ["src.functions.sound"] = function(...)
38272
38362
  local ____exports = {}
38273
- local ____isaac_2Dtypescript_2Ddefinitions = require("lua_modules.isaac-typescript-definitions.dist.src.index")
38274
- local SoundEffect = ____isaac_2Dtypescript_2Ddefinitions.SoundEffect
38363
+ local ____cachedEnumValues = require("src.arrays.cachedEnumValues")
38364
+ local SOUND_EFFECT_VALUES = ____cachedEnumValues.SOUND_EFFECT_VALUES
38275
38365
  local ____cachedClasses = require("src.core.cachedClasses")
38276
38366
  local game = ____cachedClasses.game
38277
38367
  local sfxManager = ____cachedClasses.sfxManager
@@ -38291,7 +38381,7 @@ function ____exports.getMusicForStage(self, stage, stageType)
38291
38381
  return stageTypeToMusic[stageType]
38292
38382
  end
38293
38383
  function ____exports.stopAllSoundEffects(self, soundEffectCustom)
38294
- for ____, soundEffect in ipairs(getEnumValues(nil, SoundEffect)) do
38384
+ for ____, soundEffect in ipairs(SOUND_EFFECT_VALUES) do
38295
38385
  sfxManager:Stop(soundEffect)
38296
38386
  end
38297
38387
  if soundEffectCustom ~= nil then
@@ -40291,7 +40381,8 @@ local ____exports = {}
40291
40381
  local checkEndTopStreakText, trackMapInputPressed, checkStartBottomStreakText, checkEndBottomStreakText, renderStreakText, UI_STREAK_ANIMATION_END_FRAMES, TEXT_STAY_FRAME, TEXT_OUT_FRAME, STREAK_TEXT_BOTTOM_Y_OFFSET, NUM_RENDER_FRAMES_MAP_HELD_BEFORE_STREAK_TEXT, TEXT_IN_ADJUSTMENTS, TEXT_OUT_ADJUSTMENTS, TEXT_IN_SCALES, TEXT_OUT_SCALES
40292
40382
  local ____isaac_2Dtypescript_2Ddefinitions = require("lua_modules.isaac-typescript-definitions.dist.src.index")
40293
40383
  local ButtonAction = ____isaac_2Dtypescript_2Ddefinitions.ButtonAction
40294
- local ControllerIndex = ____isaac_2Dtypescript_2Ddefinitions.ControllerIndex
40384
+ local ____cachedEnumValues = require("src.arrays.cachedEnumValues")
40385
+ local CONTROLLER_INDEX_VALUES = ____cachedEnumValues.CONTROLLER_INDEX_VALUES
40295
40386
  local ____cachedClasses = require("src.core.cachedClasses")
40296
40387
  local fonts = ____cachedClasses.fonts
40297
40388
  local game = ____cachedClasses.game
@@ -40300,8 +40391,6 @@ local KColorDefault = ____constants.KColorDefault
40300
40391
  local VectorOne = ____constants.VectorOne
40301
40392
  local ____UIStreakAnimation = require("src.enums.private.UIStreakAnimation")
40302
40393
  local UIStreakAnimation = ____UIStreakAnimation.UIStreakAnimation
40303
- local ____enums = require("src.functions.enums")
40304
- local getEnumValues = ____enums.getEnumValues
40305
40394
  local ____ui = require("src.functions.ui")
40306
40395
  local getScreenBottomCenterPos = ____ui.getScreenBottomCenterPos
40307
40396
  local getScreenTopCenterPos = ____ui.getScreenTopCenterPos
@@ -40317,7 +40406,7 @@ function checkEndTopStreakText(self, v)
40317
40406
  end
40318
40407
  end
40319
40408
  function trackMapInputPressed(self, v)
40320
- for ____, controllerIndex in ipairs(getEnumValues(nil, ControllerIndex)) do
40409
+ for ____, controllerIndex in ipairs(CONTROLLER_INDEX_VALUES) do
40321
40410
  local gameFrameCount = game:GetFrameCount()
40322
40411
  local oldPushedMapFrame = v.run.controllerIndexPushingMapRenderFrame:get(controllerIndex)
40323
40412
  local isPushingMap = Input.IsActionPressed(ButtonAction.MAP, controllerIndex)
@@ -43369,67 +43458,71 @@ end
43369
43458
  function DebugDisplay.prototype.setPressurePlateDisplay(self, textCallback)
43370
43459
  self.pressurePlate.textCallback = textCallback
43371
43460
  end
43372
- function DebugDisplay.prototype.toggleFeature(self, feature, featureName)
43373
- if feature.initialized then
43461
+ function DebugDisplay.prototype.toggleFeature(self, feature, featureName, force)
43462
+ local shouldInit = not feature.initialized
43463
+ if force ~= nil then
43464
+ shouldInit = force
43465
+ end
43466
+ if shouldInit then
43374
43467
  self.mod:uninitFeature(feature)
43375
43468
  else
43376
43469
  self.mod:initFeature(feature)
43377
43470
  end
43378
43471
  printEnabled(nil, feature.initialized, featureName .. " display")
43379
43472
  end
43380
- function DebugDisplay.prototype.togglePlayerDisplay(self)
43381
- self:toggleFeature(self.player, "player")
43473
+ function DebugDisplay.prototype.togglePlayerDisplay(self, force)
43474
+ self:toggleFeature(self.player, "player", force)
43382
43475
  end
43383
- function DebugDisplay.prototype.toggleTearDisplay(self)
43384
- self:toggleFeature(self.tear, "tear")
43476
+ function DebugDisplay.prototype.toggleTearDisplay(self, force)
43477
+ self:toggleFeature(self.tear, "tear", force)
43385
43478
  end
43386
- function DebugDisplay.prototype.toggleFamiliarDisplay(self)
43387
- self:toggleFeature(self.familiar, "familiar")
43479
+ function DebugDisplay.prototype.toggleFamiliarDisplay(self, force)
43480
+ self:toggleFeature(self.familiar, "familiar", force)
43388
43481
  end
43389
- function DebugDisplay.prototype.toggleBombDisplay(self)
43390
- self:toggleFeature(self.bomb, "bomb")
43482
+ function DebugDisplay.prototype.toggleBombDisplay(self, force)
43483
+ self:toggleFeature(self.bomb, "bomb", force)
43391
43484
  end
43392
- function DebugDisplay.prototype.togglePickupDisplay(self)
43393
- self:toggleFeature(self.pickup, "pickup")
43485
+ function DebugDisplay.prototype.togglePickupDisplay(self, force)
43486
+ self:toggleFeature(self.pickup, "pickup", force)
43394
43487
  end
43395
- function DebugDisplay.prototype.toggleSlotDisplay(self)
43396
- self:toggleFeature(self.slot, "slot")
43488
+ function DebugDisplay.prototype.toggleSlotDisplay(self, force)
43489
+ self:toggleFeature(self.slot, "slot", force)
43397
43490
  end
43398
- function DebugDisplay.prototype.toggleLaserDisplay(self)
43399
- self:toggleFeature(self.laser, "laser")
43491
+ function DebugDisplay.prototype.toggleLaserDisplay(self, force)
43492
+ self:toggleFeature(self.laser, "laser", force)
43400
43493
  end
43401
- function DebugDisplay.prototype.toggleKnifeDisplay(self)
43402
- self:toggleFeature(self.knife, "knife")
43494
+ function DebugDisplay.prototype.toggleKnifeDisplay(self, force)
43495
+ self:toggleFeature(self.knife, "knife", force)
43403
43496
  end
43404
- function DebugDisplay.prototype.toggleProjectileDisplay(self)
43405
- self:toggleFeature(self.projectile, "projectile")
43497
+ function DebugDisplay.prototype.toggleProjectileDisplay(self, force)
43498
+ self:toggleFeature(self.projectile, "projectile", force)
43406
43499
  end
43407
- function DebugDisplay.prototype.toggleEffectDisplay(self)
43408
- self:toggleFeature(self.effect, "effect")
43500
+ function DebugDisplay.prototype.toggleEffectDisplay(self, force)
43501
+ self:toggleFeature(self.effect, "effect", force)
43409
43502
  end
43410
- function DebugDisplay.prototype.toggleNPCDisplay(self)
43411
- self:toggleFeature(self.npc, "NPC")
43503
+ function DebugDisplay.prototype.toggleNPCDisplay(self, force)
43504
+ self:toggleFeature(self.npc, "NPC", force)
43412
43505
  end
43413
- function DebugDisplay.prototype.toggleRockDisplay(self)
43414
- self:toggleFeature(self.rock, "rock")
43506
+ function DebugDisplay.prototype.toggleRockDisplay(self, force)
43507
+ self:toggleFeature(self.rock, "rock", force)
43415
43508
  end
43416
- function DebugDisplay.prototype.togglePitDisplay(self)
43417
- self:toggleFeature(self.pit, "pit")
43509
+ function DebugDisplay.prototype.togglePitDisplay(self, force)
43510
+ self:toggleFeature(self.pit, "pit", force)
43418
43511
  end
43419
- function DebugDisplay.prototype.toggleSpikesDisplay(self)
43420
- self:toggleFeature(self.spikes, "spikes")
43512
+ function DebugDisplay.prototype.toggleSpikesDisplay(self, force)
43513
+ self:toggleFeature(self.spikes, "spikes", force)
43421
43514
  end
43422
- function DebugDisplay.prototype.toggleTNTDisplay(self)
43423
- self:toggleFeature(self.tnt, "tnt")
43515
+ function DebugDisplay.prototype.toggleTNTDisplay(self, force)
43516
+ self:toggleFeature(self.tnt, "tnt", force)
43424
43517
  end
43425
- function DebugDisplay.prototype.togglePoopDisplay(self)
43426
- self:toggleFeature(self.poop, "poop")
43518
+ function DebugDisplay.prototype.togglePoopDisplay(self, force)
43519
+ self:toggleFeature(self.poop, "poop", force)
43427
43520
  end
43428
- function DebugDisplay.prototype.toggleDoorDisplay(self)
43429
- self:toggleFeature(self.door, "door")
43521
+ function DebugDisplay.prototype.toggleDoorDisplay(self, force)
43522
+ self:toggleFeature(self.door, "door", force)
43430
43523
  end
43431
- function DebugDisplay.prototype.togglePressurePlateDisplay(self)
43432
- self:toggleFeature(self.pressurePlate, "pressure plate")
43524
+ function DebugDisplay.prototype.togglePressurePlateDisplay(self, force)
43525
+ self:toggleFeature(self.pressurePlate, "pressure plate", force)
43433
43526
  end
43434
43527
  __TS__Decorate({Exported}, DebugDisplay.prototype, "setPlayerDisplay", true)
43435
43528
  __TS__Decorate({Exported}, DebugDisplay.prototype, "setTearDisplay", true)
@@ -43511,12 +43604,12 @@ local getVanillaWallGridIndexSetForRoomShape, getWallGridIndexSetForRectangleRoo
43511
43604
  local ____isaac_2Dtypescript_2Ddefinitions = require("lua_modules.isaac-typescript-definitions.dist.src.index")
43512
43605
  local BossID = ____isaac_2Dtypescript_2Ddefinitions.BossID
43513
43606
  local RoomShape = ____isaac_2Dtypescript_2Ddefinitions.RoomShape
43607
+ local ____cachedEnumValues = require("src.arrays.cachedEnumValues")
43608
+ local ROOM_SHAPE_VALUES = ____cachedEnumValues.ROOM_SHAPE_VALUES
43514
43609
  local ____cachedClasses = require("src.core.cachedClasses")
43515
43610
  local game = ____cachedClasses.game
43516
43611
  local ____CornerType = require("src.enums.CornerType")
43517
43612
  local CornerType = ____CornerType.CornerType
43518
- local ____enums = require("src.functions.enums")
43519
- local getEnumValues = ____enums.getEnumValues
43520
43613
  local ____gridIndex = require("src.functions.gridIndex")
43521
43614
  local getGridIndexesBetween = ____gridIndex.getGridIndexesBetween
43522
43615
  local ____rooms = require("src.functions.rooms")
@@ -43694,7 +43787,7 @@ function getWallGridIndexSetForRectangleRoomShape(self, roomShape, corners)
43694
43787
  end
43695
43788
  local ROOM_SHAPE_TO_WALL_GRID_INDEX_SET = (function()
43696
43789
  local roomShapeToWallGridIndexSet = __TS__New(Map)
43697
- for ____, roomShape in ipairs(getEnumValues(nil, RoomShape)) do
43790
+ for ____, roomShape in ipairs(ROOM_SHAPE_VALUES) do
43698
43791
  local gridIndexSet = getVanillaWallGridIndexSetForRoomShape(nil, roomShape)
43699
43792
  roomShapeToWallGridIndexSet:set(roomShape, gridIndexSet)
43700
43793
  end
@@ -44459,10 +44552,11 @@ local EntityCollisionClass = ____isaac_2Dtypescript_2Ddefinitions.EntityCollisio
44459
44552
  local EntityGridCollisionClass = ____isaac_2Dtypescript_2Ddefinitions.EntityGridCollisionClass
44460
44553
  local EntityType = ____isaac_2Dtypescript_2Ddefinitions.EntityType
44461
44554
  local GridEntityType = ____isaac_2Dtypescript_2Ddefinitions.GridEntityType
44462
- local GridEntityXMLType = ____isaac_2Dtypescript_2Ddefinitions.GridEntityXMLType
44463
44555
  local PickupVariant = ____isaac_2Dtypescript_2Ddefinitions.PickupVariant
44464
44556
  local PitfallVariant = ____isaac_2Dtypescript_2Ddefinitions.PitfallVariant
44465
44557
  local RoomType = ____isaac_2Dtypescript_2Ddefinitions.RoomType
44558
+ local ____cachedEnumValues = require("src.arrays.cachedEnumValues")
44559
+ local GRID_ENTITY_XML_TYPE_VALUES = ____cachedEnumValues.GRID_ENTITY_XML_TYPE_VALUES
44466
44560
  local ____cachedClasses = require("src.core.cachedClasses")
44467
44561
  local game = ____cachedClasses.game
44468
44562
  local ____decorators = require("src.decorators")
@@ -44474,8 +44568,6 @@ local emptyRoom = ____emptyRoom.emptyRoom
44474
44568
  local ____entities = require("src.functions.entities")
44475
44569
  local getEntityIDFromConstituents = ____entities.getEntityIDFromConstituents
44476
44570
  local spawnWithSeed = ____entities.spawnWithSeed
44477
- local ____enums = require("src.functions.enums")
44478
- local getEnumValues = ____enums.getEnumValues
44479
44571
  local ____gridEntities = require("src.functions.gridEntities")
44480
44572
  local convertXMLGridEntityType = ____gridEntities.convertXMLGridEntityType
44481
44573
  local getGridEntities = ____gridEntities.getGridEntities
@@ -44630,8 +44722,7 @@ function getPitFrame(self, L, R, U, D, UL, UR, DL, DR)
44630
44722
  end
44631
44723
  return F
44632
44724
  end
44633
- local gridEntityXMLTypes = getEnumValues(nil, GridEntityXMLType)
44634
- local GRID_ENTITY_XML_TYPE_SET = __TS__New(ReadonlySet, gridEntityXMLTypes)
44725
+ local GRID_ENTITY_XML_TYPE_SET = __TS__New(ReadonlySet, GRID_ENTITY_XML_TYPE_VALUES)
44635
44726
  ____exports.DeployJSONRoom = __TS__Class()
44636
44727
  local DeployJSONRoom = ____exports.DeployJSONRoom
44637
44728
  DeployJSONRoom.name = "DeployJSONRoom"
@@ -45942,6 +46033,8 @@ local __TS__ArraySlice = ____lualib.__TS__ArraySlice
45942
46033
  local ____exports = {}
45943
46034
  local ____isaac_2Dtypescript_2Ddefinitions = require("lua_modules.isaac-typescript-definitions.dist.src.index")
45944
46035
  local PillColor = ____isaac_2Dtypescript_2Ddefinitions.PillColor
46036
+ local ____cachedEnumValues = require("src.arrays.cachedEnumValues")
46037
+ local PILL_COLOR_VALUES = ____cachedEnumValues.PILL_COLOR_VALUES
45945
46038
  local ____cachedClasses = require("src.core.cachedClasses")
45946
46039
  local itemConfig = ____cachedClasses.itemConfig
45947
46040
  local ____constantsFirstLast = require("src.core.constantsFirstLast")
@@ -45964,8 +46057,6 @@ local PILL_EFFECT_NAMES = ____pillEffectNames.PILL_EFFECT_NAMES
45964
46057
  local ____pillEffectTypes = require("src.objects.pillEffectTypes")
45965
46058
  local DEFAULT_PILL_EFFECT_TYPE = ____pillEffectTypes.DEFAULT_PILL_EFFECT_TYPE
45966
46059
  local PILL_EFFECT_TYPES = ____pillEffectTypes.PILL_EFFECT_TYPES
45967
- local ____enums = require("src.functions.enums")
45968
- local getEnumValues = ____enums.getEnumValues
45969
46060
  local ____types = require("src.functions.types")
45970
46061
  local asNumber = ____types.asNumber
45971
46062
  local asPillColor = ____types.asPillColor
@@ -45976,9 +46067,7 @@ function ____exports.isVanillaPillEffect(self, pillEffect)
45976
46067
  end
45977
46068
  local HORSE_PILL_ADJUSTMENT = 2048
45978
46069
  function ____exports.getAllPillColors(self)
45979
- local pillColors = getEnumValues(nil, PillColor)
45980
- __TS__ArraySlice(pillColors)
45981
- return pillColors
46070
+ return __TS__ArraySlice(PILL_COLOR_VALUES, 1)
45982
46071
  end
45983
46072
  function ____exports.getFalsePHDPillEffect(self, pillEffect)
45984
46073
  local convertedPillEffect = FALSE_PHD_PILL_CONVERSIONS:get(pillEffect)
@@ -46961,12 +47050,14 @@ local CollectibleType = ____isaac_2Dtypescript_2Ddefinitions.CollectibleType
46961
47050
  local Direction = ____isaac_2Dtypescript_2Ddefinitions.Direction
46962
47051
  local DisplayFlag = ____isaac_2Dtypescript_2Ddefinitions.DisplayFlag
46963
47052
  local GameStateFlag = ____isaac_2Dtypescript_2Ddefinitions.GameStateFlag
46964
- local GridEntityType = ____isaac_2Dtypescript_2Ddefinitions.GridEntityType
46965
47053
  local GridRoom = ____isaac_2Dtypescript_2Ddefinitions.GridRoom
46966
47054
  local LevelStage = ____isaac_2Dtypescript_2Ddefinitions.LevelStage
46967
47055
  local PillColor = ____isaac_2Dtypescript_2Ddefinitions.PillColor
46968
47056
  local RoomType = ____isaac_2Dtypescript_2Ddefinitions.RoomType
46969
47057
  local StageType = ____isaac_2Dtypescript_2Ddefinitions.StageType
47058
+ local ____cachedEnumValues = require("src.arrays.cachedEnumValues")
47059
+ local ACTIVE_SLOT_VALUES = ____cachedEnumValues.ACTIVE_SLOT_VALUES
47060
+ local GRID_ENTITY_TYPE_VALUES = ____cachedEnumValues.GRID_ENTITY_TYPE_VALUES
46970
47061
  local ____cachedClasses = require("src.core.cachedClasses")
46971
47062
  local game = ____cachedClasses.game
46972
47063
  local sfxManager = ____cachedClasses.sfxManager
@@ -47000,8 +47091,6 @@ local ____deepCopyTests = require("src.functions.deepCopyTests")
47000
47091
  local runDeepCopyTests = ____deepCopyTests.runDeepCopyTests
47001
47092
  local ____entitiesSpecific = require("src.functions.entitiesSpecific")
47002
47093
  local getNPCs = ____entitiesSpecific.getNPCs
47003
- local ____enums = require("src.functions.enums")
47004
- local getEnumValues = ____enums.getEnumValues
47005
47094
  local ____flag = require("src.functions.flag")
47006
47095
  local addFlag = ____flag.addFlag
47007
47096
  local ____gridEntities = require("src.functions.gridEntities")
@@ -47516,7 +47605,6 @@ function ____exports.grid2(self)
47516
47605
  ____exports.gridCosts(nil)
47517
47606
  end
47518
47607
  function ____exports.gridEntities(self)
47519
- local gridEntityTypes = getEnumValues(nil, GridEntityType)
47520
47608
  local gridEntityTypeIndex = -1
47521
47609
  do
47522
47610
  local y = 0
@@ -47525,7 +47613,7 @@ function ____exports.gridEntities(self)
47525
47613
  local x = 0
47526
47614
  while x <= 12 do
47527
47615
  gridEntityTypeIndex = gridEntityTypeIndex + 1
47528
- local gridEntityType = gridEntityTypes[gridEntityTypeIndex + 1]
47616
+ local gridEntityType = GRID_ENTITY_TYPE_VALUES[gridEntityTypeIndex + 1]
47529
47617
  if gridEntityType == nil then
47530
47618
  return
47531
47619
  end
@@ -47791,8 +47879,7 @@ function ____exports.setCharges(self, params)
47791
47879
  print("The provided slot number is invalid: " .. tostring(activeSlotString))
47792
47880
  return
47793
47881
  end
47794
- local activeSlots = getEnumValues(nil, ActiveSlot)
47795
- if not __TS__ArrayIncludes(activeSlots, activeSlot) then
47882
+ if not __TS__ArrayIncludes(ACTIVE_SLOT_VALUES, activeSlot) then
47796
47883
  print("The provided slot number is invalid: " .. tostring(activeSlot))
47797
47884
  return
47798
47885
  end
@@ -51061,12 +51148,10 @@ return ____exports
51061
51148
  end,
51062
51149
  ["src.functions.level"] = function(...)
51063
51150
  local ____exports = {}
51064
- local ____isaac_2Dtypescript_2Ddefinitions = require("lua_modules.isaac-typescript-definitions.dist.src.index")
51065
- local DoorSlot = ____isaac_2Dtypescript_2Ddefinitions.DoorSlot
51151
+ local ____cachedEnumValues = require("src.arrays.cachedEnumValues")
51152
+ local DOOR_SLOT_VALUES = ____cachedEnumValues.DOOR_SLOT_VALUES
51066
51153
  local ____cachedClasses = require("src.core.cachedClasses")
51067
51154
  local game = ____cachedClasses.game
51068
- local ____enums = require("src.functions.enums")
51069
- local getEnumValues = ____enums.getEnumValues
51070
51155
  local ____levelGrid = require("src.functions.levelGrid")
51071
51156
  local isDoorSlotValidAtGridIndexForRedRoom = ____levelGrid.isDoorSlotValidAtGridIndexForRedRoom
51072
51157
  local ____rooms = require("src.functions.rooms")
@@ -51080,7 +51165,7 @@ function ____exports.fillLevelWithRedRooms(self)
51080
51165
  local roomsInGrid = getRoomsInsideGrid(nil)
51081
51166
  numRoomsInGrid = #roomsInGrid
51082
51167
  for ____, roomDescriptor in ipairs(roomsInGrid) do
51083
- for ____, doorSlot in ipairs(getEnumValues(nil, DoorSlot)) do
51168
+ for ____, doorSlot in ipairs(DOOR_SLOT_VALUES) do
51084
51169
  if isDoorSlotValidAtGridIndexForRedRoom(nil, doorSlot, roomDescriptor.GridIndex) then
51085
51170
  level:MakeRedRoomDoor(roomDescriptor.GridIndex, doorSlot)
51086
51171
  end
@@ -51227,11 +51312,10 @@ local CardType = ____isaac_2Dtypescript_2Ddefinitions.CardType
51227
51312
  local CollectibleType = ____isaac_2Dtypescript_2Ddefinitions.CollectibleType
51228
51313
  local PillColor = ____isaac_2Dtypescript_2Ddefinitions.PillColor
51229
51314
  local PlayerType = ____isaac_2Dtypescript_2Ddefinitions.PlayerType
51230
- local PocketItemSlot = ____isaac_2Dtypescript_2Ddefinitions.PocketItemSlot
51315
+ local ____cachedEnumValues = require("src.arrays.cachedEnumValues")
51316
+ local POCKET_ITEM_SLOT_VALUES = ____cachedEnumValues.POCKET_ITEM_SLOT_VALUES
51231
51317
  local ____PocketItemType = require("src.enums.PocketItemType")
51232
51318
  local PocketItemType = ____PocketItemType.PocketItemType
51233
- local ____enums = require("src.functions.enums")
51234
- local getEnumValues = ____enums.getEnumValues
51235
51319
  local ____players = require("src.functions.players")
51236
51320
  local isCharacter = ____players.isCharacter
51237
51321
  local ____types = require("src.functions.types")
@@ -51242,11 +51326,10 @@ function ____exports.getPocketItems(self, player)
51242
51326
  local pocketItem2 = player:GetActiveItem(ActiveSlot.POCKET_SINGLE_USE)
51243
51327
  local hasPocketItem2 = pocketItem2 ~= CollectibleType.NULL
51244
51328
  local maxPocketItems = player:GetMaxPocketItems()
51245
- local pocketItemSlots = getEnumValues(nil, PocketItemSlot)
51246
51329
  local pocketItems = {}
51247
51330
  local pocketItemIdentified = false
51248
51331
  local pocketItem2Identified = false
51249
- for ____, slot in ipairs(pocketItemSlots) do
51332
+ for ____, slot in ipairs(POCKET_ITEM_SLOT_VALUES) do
51250
51333
  local cardType = player:GetCard(slot)
51251
51334
  local pillColor = player:GetPill(slot)
51252
51335
  if cardType ~= CardType.NULL then
@@ -51379,6 +51462,8 @@ local ____exports = {}
51379
51462
  local ____isaac_2Dtypescript_2Ddefinitions = require("lua_modules.isaac-typescript-definitions.dist.src.index")
51380
51463
  local ItemConfigTag = ____isaac_2Dtypescript_2Ddefinitions.ItemConfigTag
51381
51464
  local PlayerForm = ____isaac_2Dtypescript_2Ddefinitions.PlayerForm
51465
+ local ____cachedEnumValues = require("src.arrays.cachedEnumValues")
51466
+ local PLAYER_FORM_VALUES = ____cachedEnumValues.PLAYER_FORM_VALUES
51382
51467
  local ____transformationNames = require("src.objects.transformationNames")
51383
51468
  local TRANSFORMATION_NAMES = ____transformationNames.TRANSFORMATION_NAMES
51384
51469
  local ____ReadonlyMap = require("src.types.ReadonlyMap")
@@ -51387,8 +51472,6 @@ local ____ReadonlySet = require("src.types.ReadonlySet")
51387
51472
  local ReadonlySet = ____ReadonlySet.ReadonlySet
51388
51473
  local ____collectibles = require("src.functions.collectibles")
51389
51474
  local getCollectibleTags = ____collectibles.getCollectibleTags
51390
- local ____enums = require("src.functions.enums")
51391
- local getEnumValues = ____enums.getEnumValues
51392
51475
  local ____flag = require("src.functions.flag")
51393
51476
  local hasFlag = ____flag.hasFlag
51394
51477
  local TRANSFORMATION_TO_TAG_MAP = __TS__New(ReadonlyMap, {
@@ -51408,7 +51491,7 @@ local TRANSFORMATION_TO_TAG_MAP = __TS__New(ReadonlyMap, {
51408
51491
  local TRANSFORMATIONS_THAT_GRANT_FLYING = __TS__New(ReadonlySet, {PlayerForm.GUPPY, PlayerForm.BEELZEBUB, PlayerForm.SERAPHIM, PlayerForm.LEVIATHAN})
51409
51492
  function ____exports.getPlayerTransformations(self, player)
51410
51493
  local transformations = __TS__New(Set)
51411
- for ____, playerForm in ipairs(getEnumValues(nil, PlayerForm)) do
51494
+ for ____, playerForm in ipairs(PLAYER_FORM_VALUES) do
51412
51495
  if player:HasPlayerForm(playerForm) then
51413
51496
  transformations:add(playerForm)
51414
51497
  end
@@ -51420,9 +51503,8 @@ function ____exports.getTransformationName(self, playerForm)
51420
51503
  end
51421
51504
  function ____exports.getTransformationsForCollectibleType(self, collectibleType)
51422
51505
  local itemConfigTags = getCollectibleTags(nil, collectibleType)
51423
- local playerForms = getEnumValues(nil, PlayerForm)
51424
51506
  local transformationSet = __TS__New(Set)
51425
- for ____, playerForm in ipairs(playerForms) do
51507
+ for ____, playerForm in ipairs(PLAYER_FORM_VALUES) do
51426
51508
  do
51427
51509
  local itemConfigTag = TRANSFORMATION_TO_TAG_MAP:get(playerForm)
51428
51510
  if itemConfigTag == nil then