isaacscript-common 21.2.1 → 21.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (90) hide show
  1. package/dist/index.d.ts +177 -84
  2. package/dist/isaacscript-common.lua +527 -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/PostKeyboardChanged.d.ts +16 -0
  15. package/dist/src/classes/callbacks/PostKeyboardChanged.d.ts.map +1 -0
  16. package/dist/src/classes/callbacks/PostKeyboardChanged.lua +50 -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 +81 -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 +6 -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/PostKeyboardChanged.ts +62 -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 +17 -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 +7 -0
@@ -1,6 +1,6 @@
1
1
  --[[
2
2
 
3
- isaacscript-common 21.2.1
3
+ isaacscript-common 21.4.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_CHANGED = 44
2649
+ ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_KEYBOARD_CHANGED] = "POST_KEYBOARD_CHANGED"
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,295 @@ 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.PostKeyboardChanged"] = 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.PostKeyboardChanged = __TS__Class()
25537
+ local PostKeyboardChanged = ____exports.PostKeyboardChanged
25538
+ PostKeyboardChanged.name = "PostKeyboardChanged"
25539
+ __TS__ClassExtends(PostKeyboardChanged, CustomCallback)
25540
+ function PostKeyboardChanged.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, pressed = table.unpack(fireArgs)
25545
+ local callbackKeyboard, callbackPressed = table.unpack(optionalArgs)
25546
+ return (callbackKeyboard == nil or callbackKeyboard == keyboard) and (callbackPressed == nil or callbackPressed == pressed)
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
+ self:fire(keyboard, false)
25553
+ end
25554
+ end
25555
+ for ____, keyboard in ipairs(KEYBOARD_VALUES) do
25556
+ do
25557
+ if self.v.run.pressedKeys:has(keyboard) then
25558
+ goto __continue8
25559
+ end
25560
+ if isKeyboardPressed(nil, keyboard) then
25561
+ self.v.run.pressedKeys:add(keyboard)
25562
+ self:fire(keyboard, true)
25563
+ end
25564
+ end
25565
+ ::__continue8::
25566
+ end
25567
+ end
25568
+ self.callbacksUsed = {{ModCallback.POST_RENDER, self.postRender}}
25569
+ end
25237
25570
  return ____exports
25238
25571
  end,
25239
25572
  ["src.classes.callbacks.PostKnifeInitLate"] = function(...)
@@ -26746,11 +27079,12 @@ local __TS__ArrayMap = ____lualib.__TS__ArrayMap
26746
27079
  local __TS__ArrayForEach = ____lualib.__TS__ArrayForEach
26747
27080
  local ____exports = {}
26748
27081
  local ____isaac_2Dtypescript_2Ddefinitions = require("lua_modules.isaac-typescript-definitions.dist.src.index")
26749
- local ActiveSlot = ____isaac_2Dtypescript_2Ddefinitions.ActiveSlot
26750
27082
  local CollectibleType = ____isaac_2Dtypescript_2Ddefinitions.CollectibleType
26751
27083
  local HeartSubType = ____isaac_2Dtypescript_2Ddefinitions.HeartSubType
26752
27084
  local PlayerType = ____isaac_2Dtypescript_2Ddefinitions.PlayerType
26753
27085
  local TrinketType = ____isaac_2Dtypescript_2Ddefinitions.TrinketType
27086
+ local ____cachedEnumValues = require("src.arrays.cachedEnumValues")
27087
+ local ACTIVE_SLOT_VALUES = ____cachedEnumValues.ACTIVE_SLOT_VALUES
26754
27088
  local ____constants = require("src.core.constants")
26755
27089
  local MAX_PLAYER_HEART_CONTAINERS = ____constants.MAX_PLAYER_HEART_CONTAINERS
26756
27090
  local ____HealthType = require("src.enums.HealthType")
@@ -26763,8 +27097,6 @@ local ____characters = require("src.functions.characters")
26763
27097
  local getCharacterMaxHeartContainers = ____characters.getCharacterMaxHeartContainers
26764
27098
  local ____charge = require("src.functions.charge")
26765
27099
  local getTotalCharge = ____charge.getTotalCharge
26766
- local ____enums = require("src.functions.enums")
26767
- local getEnumValues = ____enums.getEnumValues
26768
27100
  local ____players = require("src.functions.players")
26769
27101
  local isCharacter = ____players.isCharacter
26770
27102
  local isKeeper = ____players.isKeeper
@@ -26827,7 +27159,7 @@ function ____exports.setPlayerHealth(self, player, playerHealth)
26827
27159
  ____exports.removeAllPlayerHealth(nil, player)
26828
27160
  local alabasterBoxes = {}
26829
27161
  if player:HasCollectible(CollectibleType.ALABASTER_BOX) then
26830
- for ____, activeSlot in ipairs(getEnumValues(nil, ActiveSlot)) do
27162
+ for ____, activeSlot in ipairs(ACTIVE_SLOT_VALUES) do
26831
27163
  local activeItem = player:GetActiveItem()
26832
27164
  if activeItem == CollectibleType.ALABASTER_BOX then
26833
27165
  local totalCharge = getTotalCharge(nil, player, activeSlot)
@@ -29237,12 +29569,10 @@ local __TS__ClassExtends = ____lualib.__TS__ClassExtends
29237
29569
  local Map = ____lualib.Map
29238
29570
  local __TS__New = ____lualib.__TS__New
29239
29571
  local ____exports = {}
29240
- local ____HealthType = require("src.enums.HealthType")
29241
- local HealthType = ____HealthType.HealthType
29572
+ local ____cachedEnumValues = require("src.arrays.cachedEnumValues")
29573
+ local HEALTH_TYPE_VALUES = ____cachedEnumValues.HEALTH_TYPE_VALUES
29242
29574
  local ____ModCallbackCustom = require("src.enums.ModCallbackCustom")
29243
29575
  local ModCallbackCustom = ____ModCallbackCustom.ModCallbackCustom
29244
- local ____enums = require("src.functions.enums")
29245
- local getEnumValues = ____enums.getEnumValues
29246
29576
  local ____playerHealth = require("src.functions.playerHealth")
29247
29577
  local getPlayerHealthType = ____playerHealth.getPlayerHealthType
29248
29578
  local ____playerIndex = require("src.functions.playerIndex")
@@ -29267,7 +29597,7 @@ function PostPlayerChangeHealth.prototype.____constructor(self)
29267
29597
  self.postPEffectReordered = function(____, player)
29268
29598
  local playerIndex = getPlayerIndex(nil, player, true)
29269
29599
  local playerHealthMap = self.v.run.playersHealthMap:getAndSetDefault(playerIndex)
29270
- for ____, healthType in ipairs(getEnumValues(nil, HealthType)) do
29600
+ for ____, healthType in ipairs(HEALTH_TYPE_VALUES) do
29271
29601
  local storedHealthValue = playerHealthMap:get(healthType)
29272
29602
  local currentHealthValue = getPlayerHealthType(nil, player, healthType)
29273
29603
  playerHealthMap:set(healthType, currentHealthValue)
@@ -29318,17 +29648,15 @@ local Map = ____lualib.Map
29318
29648
  local __TS__New = ____lualib.__TS__New
29319
29649
  local ____exports = {}
29320
29650
  local statEquals
29651
+ local ____cachedEnumValues = require("src.arrays.cachedEnumValues")
29652
+ local STAT_TYPE_VALUES = ____cachedEnumValues.STAT_TYPE_VALUES
29321
29653
  local ____ModCallbackCustom = require("src.enums.ModCallbackCustom")
29322
29654
  local ModCallbackCustom = ____ModCallbackCustom.ModCallbackCustom
29323
- local ____StatType = require("src.enums.StatType")
29324
- local StatType = ____StatType.StatType
29325
29655
  local ____bitSet128 = require("src.functions.bitSet128")
29326
29656
  local isBitSet128 = ____bitSet128.isBitSet128
29327
29657
  local ____color = require("src.functions.color")
29328
29658
  local colorEquals = ____color.colorEquals
29329
29659
  local isColor = ____color.isColor
29330
- local ____enums = require("src.functions.enums")
29331
- local getEnumValues = ____enums.getEnumValues
29332
29660
  local ____playerIndex = require("src.functions.playerIndex")
29333
29661
  local getPlayerIndex = ____playerIndex.getPlayerIndex
29334
29662
  local ____playerStats = require("src.functions.playerStats")
@@ -29382,7 +29710,7 @@ function PostPlayerChangeStat.prototype.____constructor(self)
29382
29710
  self.postPEffectReordered = function(____, player)
29383
29711
  local playerIndex = getPlayerIndex(nil, player, true)
29384
29712
  local playerStatMap = self.v.run.playersStatMap:getAndSetDefault(playerIndex)
29385
- for ____, statType in ipairs(getEnumValues(nil, StatType)) do
29713
+ for ____, statType in ipairs(STAT_TYPE_VALUES) do
29386
29714
  do
29387
29715
  local storedStatValue = playerStatMap:get(statType)
29388
29716
  local currentStatValue = getPlayerStat(nil, player, statType)
@@ -30597,12 +30925,10 @@ local __TS__ClassExtends = ____lualib.__TS__ClassExtends
30597
30925
  local Map = ____lualib.Map
30598
30926
  local __TS__New = ____lualib.__TS__New
30599
30927
  local ____exports = {}
30600
- local ____isaac_2Dtypescript_2Ddefinitions = require("lua_modules.isaac-typescript-definitions.dist.src.index")
30601
- local PlayerForm = ____isaac_2Dtypescript_2Ddefinitions.PlayerForm
30928
+ local ____cachedEnumValues = require("src.arrays.cachedEnumValues")
30929
+ local PLAYER_FORM_VALUES = ____cachedEnumValues.PLAYER_FORM_VALUES
30602
30930
  local ____ModCallbackCustom = require("src.enums.ModCallbackCustom")
30603
30931
  local ModCallbackCustom = ____ModCallbackCustom.ModCallbackCustom
30604
- local ____enums = require("src.functions.enums")
30605
- local getEnumValues = ____enums.getEnumValues
30606
30932
  local ____playerDataStructures = require("src.functions.playerDataStructures")
30607
30933
  local defaultMapGetPlayer = ____playerDataStructures.defaultMapGetPlayer
30608
30934
  local ____DefaultMap = require("src.classes.DefaultMap")
@@ -30626,7 +30952,7 @@ function PostTransformation.prototype.____constructor(self)
30626
30952
  end
30627
30953
  self.postPEffectUpdateReordered = function(____, player)
30628
30954
  local playerTransformationsMap = defaultMapGetPlayer(nil, self.v.run.playersTransformationsMap, player)
30629
- for ____, playerForm in ipairs(getEnumValues(nil, PlayerForm)) do
30955
+ for ____, playerForm in ipairs(PLAYER_FORM_VALUES) do
30630
30956
  local hasForm = player:HasPlayerForm(playerForm)
30631
30957
  local storedForm = playerTransformationsMap:get(playerForm)
30632
30958
  if storedForm == nil then
@@ -31220,6 +31546,11 @@ do
31220
31546
  local PostItemPickup = ____PostItemPickup.PostItemPickup
31221
31547
  ____exports.PostItemPickup = PostItemPickup
31222
31548
  end
31549
+ do
31550
+ local ____PostKeyboardChanged = require("src.classes.callbacks.PostKeyboardChanged")
31551
+ local PostKeyboardPressed = ____PostKeyboardChanged.PostKeyboardChanged
31552
+ ____exports.PostKeyboardPressed = PostKeyboardPressed
31553
+ end
31223
31554
  do
31224
31555
  local ____PostKnifeInitLate = require("src.classes.callbacks.PostKnifeInitLate")
31225
31556
  local PostKnifeInitLate = ____PostKnifeInitLate.PostKnifeInitLate
@@ -31605,6 +31936,7 @@ local MOD_CALLBACK_CUSTOM_TO_CLASS = {
31605
31936
  [ModCallbackCustom.POST_HOLY_MANTLE_REMOVED] = cc.PostHolyMantleRemoved,
31606
31937
  [ModCallbackCustom.POST_ITEM_DISCHARGE] = cc.PostItemDischarge,
31607
31938
  [ModCallbackCustom.POST_ITEM_PICKUP] = cc.PostItemPickup,
31939
+ [ModCallbackCustom.POST_KEYBOARD_CHANGED] = cc.PostKeyboardPressed,
31608
31940
  [ModCallbackCustom.POST_KNIFE_INIT_LATE] = cc.PostKnifeInitLate,
31609
31941
  [ModCallbackCustom.POST_LASER_INIT_LATE] = cc.PostLaserInitLate,
31610
31942
  [ModCallbackCustom.POST_NEW_LEVEL_REORDERED] = cc.PostNewLevelReordered,
@@ -33458,6 +33790,10 @@ local ItemConfigCardType = ____isaac_2Dtypescript_2Ddefinitions.ItemConfigCardTy
33458
33790
  local ItemConfigTag = ____isaac_2Dtypescript_2Ddefinitions.ItemConfigTag
33459
33791
  local PlayerForm = ____isaac_2Dtypescript_2Ddefinitions.PlayerForm
33460
33792
  local TrinketType = ____isaac_2Dtypescript_2Ddefinitions.TrinketType
33793
+ local ____cachedEnumValues = require("src.arrays.cachedEnumValues")
33794
+ local CACHE_FLAG_VALUES = ____cachedEnumValues.CACHE_FLAG_VALUES
33795
+ local ITEM_CONFIG_CARD_TYPE_VALUES = ____cachedEnumValues.ITEM_CONFIG_CARD_TYPE_VALUES
33796
+ local ITEM_CONFIG_TAG_VALUES = ____cachedEnumValues.ITEM_CONFIG_TAG_VALUES
33461
33797
  local ____cachedClasses = require("src.core.cachedClasses")
33462
33798
  local itemConfig = ____cachedClasses.itemConfig
33463
33799
  local ____constants = require("src.core.constants")
@@ -33477,8 +33813,6 @@ local isHiddenCollectible = ____collectibles.isHiddenCollectible
33477
33813
  local isPassiveCollectible = ____collectibles.isPassiveCollectible
33478
33814
  local ____collectibleTag = require("src.functions.collectibleTag")
33479
33815
  local collectibleHasTag = ____collectibleTag.collectibleHasTag
33480
- local ____enums = require("src.functions.enums")
33481
- local getEnumValues = ____enums.getEnumValues
33482
33816
  local ____flag = require("src.functions.flag")
33483
33817
  local getFlagName = ____flag.getFlagName
33484
33818
  local ____rng = require("src.functions.rng")
@@ -33666,14 +34000,14 @@ function ModdedElementSets.prototype.lazyInitTagToCollectibleTypesMap(self)
33666
34000
  if self.tagToCollectibleTypesMap.size > 0 then
33667
34001
  return
33668
34002
  end
33669
- for ____, itemConfigTag in ipairs(getEnumValues(nil, ItemConfigTag)) do
34003
+ for ____, itemConfigTag in ipairs(ITEM_CONFIG_TAG_VALUES) do
33670
34004
  self.tagToCollectibleTypesMap:set(
33671
34005
  itemConfigTag,
33672
34006
  __TS__New(Set)
33673
34007
  )
33674
34008
  end
33675
34009
  for ____, collectibleType in ipairs(self:getCollectibleArray()) do
33676
- for ____, itemConfigTag in ipairs(getEnumValues(nil, ItemConfigTag)) do
34010
+ for ____, itemConfigTag in ipairs(ITEM_CONFIG_TAG_VALUES) do
33677
34011
  do
33678
34012
  if not collectibleHasTag(nil, collectibleType, itemConfigTag) then
33679
34013
  goto __continue44
@@ -33693,7 +34027,7 @@ function ModdedElementSets.prototype.lazyInitCacheFlagToCollectibleTypesMap(self
33693
34027
  if self.cacheFlagToCollectibleTypesMap.size > 0 then
33694
34028
  return
33695
34029
  end
33696
- for ____, cacheFlag in ipairs(getEnumValues(nil, CacheFlag)) do
34030
+ for ____, cacheFlag in ipairs(CACHE_FLAG_VALUES) do
33697
34031
  local collectiblesSet = __TS__New(Set)
33698
34032
  for ____, collectibleType in ipairs(self:getCollectibleArray()) do
33699
34033
  if collectibleHasCacheFlag(nil, collectibleType, cacheFlag) then
@@ -33707,7 +34041,7 @@ function ModdedElementSets.prototype.lazyInitCacheFlagToTrinketTypesMap(self)
33707
34041
  if self.cacheFlagToTrinketTypesMap.size > 0 then
33708
34042
  return
33709
34043
  end
33710
- for ____, cacheFlag in ipairs(getEnumValues(nil, CacheFlag)) do
34044
+ for ____, cacheFlag in ipairs(CACHE_FLAG_VALUES) do
33711
34045
  local trinketsSet = __TS__New(Set)
33712
34046
  for ____, trinketType in ipairs(self.moddedElementDetection:getTrinketTypes()) do
33713
34047
  if trinketHasCacheFlag(nil, trinketType, cacheFlag) then
@@ -33773,7 +34107,7 @@ function ModdedElementSets.prototype.lazyInitCardTypes(self)
33773
34107
  if self.itemConfigCardTypeToCardTypeMap.size > 0 then
33774
34108
  return
33775
34109
  end
33776
- for ____, itemConfigCardType in ipairs(getEnumValues(nil, ItemConfigCardType)) do
34110
+ for ____, itemConfigCardType in ipairs(ITEM_CONFIG_CARD_TYPE_VALUES) do
33777
34111
  self.itemConfigCardTypeToCardTypeMap:set(
33778
34112
  itemConfigCardType,
33779
34113
  __TS__New(Set)
@@ -34116,20 +34450,19 @@ local __TS__Iterator = ____lualib.__TS__Iterator
34116
34450
  local __TS__ArraySort = ____lualib.__TS__ArraySort
34117
34451
  local ____exports = {}
34118
34452
  local ____isaac_2Dtypescript_2Ddefinitions = require("lua_modules.isaac-typescript-definitions.dist.src.index")
34119
- local ActiveSlot = ____isaac_2Dtypescript_2Ddefinitions.ActiveSlot
34120
34453
  local CollectibleType = ____isaac_2Dtypescript_2Ddefinitions.CollectibleType
34121
34454
  local DamageFlag = ____isaac_2Dtypescript_2Ddefinitions.DamageFlag
34122
34455
  local ItemType = ____isaac_2Dtypescript_2Ddefinitions.ItemType
34123
34456
  local ModCallback = ____isaac_2Dtypescript_2Ddefinitions.ModCallback
34124
34457
  local PlayerType = ____isaac_2Dtypescript_2Ddefinitions.PlayerType
34458
+ local ____cachedEnumValues = require("src.arrays.cachedEnumValues")
34459
+ local ACTIVE_SLOT_VALUES = ____cachedEnumValues.ACTIVE_SLOT_VALUES
34125
34460
  local ____ISCFeature = require("src.enums.ISCFeature")
34126
34461
  local ISCFeature = ____ISCFeature.ISCFeature
34127
34462
  local ____ModCallbackCustom = require("src.enums.ModCallbackCustom")
34128
34463
  local ModCallbackCustom = ____ModCallbackCustom.ModCallbackCustom
34129
34464
  local ____array = require("src.functions.array")
34130
34465
  local arrayEquals = ____array.arrayEquals
34131
- local ____enums = require("src.functions.enums")
34132
- local getEnumValues = ____enums.getEnumValues
34133
34466
  local ____flag = require("src.functions.flag")
34134
34467
  local hasFlag = ____flag.hasFlag
34135
34468
  local ____playerDataStructures = require("src.functions.playerDataStructures")
@@ -34252,7 +34585,7 @@ function PlayerCollectibleDetection.prototype.checkActiveItemsChanged(self, play
34252
34585
  local activeItemMap = defaultMapGetPlayer(nil, self.v.run.playersActiveItemMap, player)
34253
34586
  local oldCollectibleTypes = {}
34254
34587
  local newCollectibleTypes = {}
34255
- for ____, activeSlot in ipairs(getEnumValues(nil, ActiveSlot)) do
34588
+ for ____, activeSlot in ipairs(ACTIVE_SLOT_VALUES) do
34256
34589
  local oldCollectibleType = activeItemMap:get(activeSlot) or CollectibleType.NULL
34257
34590
  local newCollectibleType = player:GetActiveItem(activeSlot)
34258
34591
  activeItemMap:set(activeSlot, newCollectibleType)
@@ -35407,16 +35740,14 @@ local __TS__ArrayMap = ____lualib.__TS__ArrayMap
35407
35740
  local __TS__ArraySome = ____lualib.__TS__ArraySome
35408
35741
  local ____exports = {}
35409
35742
  local getSerializedTableType
35410
- local ____SerializationBrand = require("src.enums.SerializationBrand")
35411
- local SerializationBrand = ____SerializationBrand.SerializationBrand
35743
+ local ____cachedEnumValues = require("src.arrays.cachedEnumValues")
35744
+ local SERIALIZATION_BRAND_VALUES = ____cachedEnumValues.SERIALIZATION_BRAND_VALUES
35412
35745
  local ____isaacAPIClassTypeToBrand = require("src.objects.isaacAPIClassTypeToBrand")
35413
35746
  local ISAAC_API_CLASS_TYPE_TO_BRAND = ____isaacAPIClassTypeToBrand.ISAAC_API_CLASS_TYPE_TO_BRAND
35414
35747
  local ____isaacAPIClassTypeToFunctions = require("src.objects.isaacAPIClassTypeToFunctions")
35415
35748
  local ISAAC_API_CLASS_TYPE_TO_FUNCTIONS = ____isaacAPIClassTypeToFunctions.ISAAC_API_CLASS_TYPE_TO_FUNCTIONS
35416
35749
  local ____ReadonlySet = require("src.types.ReadonlySet")
35417
35750
  local ReadonlySet = ____ReadonlySet.ReadonlySet
35418
- local ____enums = require("src.functions.enums")
35419
- local getEnumValues = ____enums.getEnumValues
35420
35751
  local ____isaacAPIClass = require("src.functions.isaacAPIClass")
35421
35752
  local getIsaacAPIClassName = ____isaacAPIClass.getIsaacAPIClassName
35422
35753
  local ____types = require("src.functions.types")
@@ -35433,8 +35764,7 @@ function getSerializedTableType(self, serializedIsaacAPIClass)
35433
35764
  end
35434
35765
  return nil
35435
35766
  end
35436
- local SERIALIZATION_BRANDS = getEnumValues(nil, SerializationBrand)
35437
- local SERIALIZATION_BRAND_SET = __TS__New(ReadonlySet, SERIALIZATION_BRANDS)
35767
+ local SERIALIZATION_BRAND_SET = __TS__New(ReadonlySet, SERIALIZATION_BRAND_VALUES)
35438
35768
  function ____exports.copyIsaacAPIClass(self, isaacAPIClass)
35439
35769
  if not isUserdata(nil, isaacAPIClass) then
35440
35770
  error("Failed to copy an Isaac API class since the provided object was of type: " .. __TS__TypeOf(isaacAPIClass))
@@ -37435,245 +37765,6 @@ function CollectibleItemPoolType.prototype.getCollectibleItemPoolType(self, coll
37435
37765
  return itemPoolType == nil and getRoomItemPoolType(nil) or itemPoolType
37436
37766
  end
37437
37767
  __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
37768
  return ____exports
37678
37769
  end,
37679
37770
  ["src.classes.features.other.CustomHotkeys"] = function(...)
@@ -38270,8 +38361,8 @@ return ____exports
38270
38361
  end,
38271
38362
  ["src.functions.sound"] = function(...)
38272
38363
  local ____exports = {}
38273
- local ____isaac_2Dtypescript_2Ddefinitions = require("lua_modules.isaac-typescript-definitions.dist.src.index")
38274
- local SoundEffect = ____isaac_2Dtypescript_2Ddefinitions.SoundEffect
38364
+ local ____cachedEnumValues = require("src.arrays.cachedEnumValues")
38365
+ local SOUND_EFFECT_VALUES = ____cachedEnumValues.SOUND_EFFECT_VALUES
38275
38366
  local ____cachedClasses = require("src.core.cachedClasses")
38276
38367
  local game = ____cachedClasses.game
38277
38368
  local sfxManager = ____cachedClasses.sfxManager
@@ -38291,7 +38382,7 @@ function ____exports.getMusicForStage(self, stage, stageType)
38291
38382
  return stageTypeToMusic[stageType]
38292
38383
  end
38293
38384
  function ____exports.stopAllSoundEffects(self, soundEffectCustom)
38294
- for ____, soundEffect in ipairs(getEnumValues(nil, SoundEffect)) do
38385
+ for ____, soundEffect in ipairs(SOUND_EFFECT_VALUES) do
38295
38386
  sfxManager:Stop(soundEffect)
38296
38387
  end
38297
38388
  if soundEffectCustom ~= nil then
@@ -40291,7 +40382,8 @@ local ____exports = {}
40291
40382
  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
40383
  local ____isaac_2Dtypescript_2Ddefinitions = require("lua_modules.isaac-typescript-definitions.dist.src.index")
40293
40384
  local ButtonAction = ____isaac_2Dtypescript_2Ddefinitions.ButtonAction
40294
- local ControllerIndex = ____isaac_2Dtypescript_2Ddefinitions.ControllerIndex
40385
+ local ____cachedEnumValues = require("src.arrays.cachedEnumValues")
40386
+ local CONTROLLER_INDEX_VALUES = ____cachedEnumValues.CONTROLLER_INDEX_VALUES
40295
40387
  local ____cachedClasses = require("src.core.cachedClasses")
40296
40388
  local fonts = ____cachedClasses.fonts
40297
40389
  local game = ____cachedClasses.game
@@ -40300,8 +40392,6 @@ local KColorDefault = ____constants.KColorDefault
40300
40392
  local VectorOne = ____constants.VectorOne
40301
40393
  local ____UIStreakAnimation = require("src.enums.private.UIStreakAnimation")
40302
40394
  local UIStreakAnimation = ____UIStreakAnimation.UIStreakAnimation
40303
- local ____enums = require("src.functions.enums")
40304
- local getEnumValues = ____enums.getEnumValues
40305
40395
  local ____ui = require("src.functions.ui")
40306
40396
  local getScreenBottomCenterPos = ____ui.getScreenBottomCenterPos
40307
40397
  local getScreenTopCenterPos = ____ui.getScreenTopCenterPos
@@ -40317,7 +40407,7 @@ function checkEndTopStreakText(self, v)
40317
40407
  end
40318
40408
  end
40319
40409
  function trackMapInputPressed(self, v)
40320
- for ____, controllerIndex in ipairs(getEnumValues(nil, ControllerIndex)) do
40410
+ for ____, controllerIndex in ipairs(CONTROLLER_INDEX_VALUES) do
40321
40411
  local gameFrameCount = game:GetFrameCount()
40322
40412
  local oldPushedMapFrame = v.run.controllerIndexPushingMapRenderFrame:get(controllerIndex)
40323
40413
  local isPushingMap = Input.IsActionPressed(ButtonAction.MAP, controllerIndex)
@@ -43369,67 +43459,71 @@ end
43369
43459
  function DebugDisplay.prototype.setPressurePlateDisplay(self, textCallback)
43370
43460
  self.pressurePlate.textCallback = textCallback
43371
43461
  end
43372
- function DebugDisplay.prototype.toggleFeature(self, feature, featureName)
43373
- if feature.initialized then
43462
+ function DebugDisplay.prototype.toggleFeature(self, feature, featureName, force)
43463
+ local shouldInit = not feature.initialized
43464
+ if force ~= nil then
43465
+ shouldInit = force
43466
+ end
43467
+ if shouldInit then
43374
43468
  self.mod:uninitFeature(feature)
43375
43469
  else
43376
43470
  self.mod:initFeature(feature)
43377
43471
  end
43378
43472
  printEnabled(nil, feature.initialized, featureName .. " display")
43379
43473
  end
43380
- function DebugDisplay.prototype.togglePlayerDisplay(self)
43381
- self:toggleFeature(self.player, "player")
43474
+ function DebugDisplay.prototype.togglePlayerDisplay(self, force)
43475
+ self:toggleFeature(self.player, "player", force)
43382
43476
  end
43383
- function DebugDisplay.prototype.toggleTearDisplay(self)
43384
- self:toggleFeature(self.tear, "tear")
43477
+ function DebugDisplay.prototype.toggleTearDisplay(self, force)
43478
+ self:toggleFeature(self.tear, "tear", force)
43385
43479
  end
43386
- function DebugDisplay.prototype.toggleFamiliarDisplay(self)
43387
- self:toggleFeature(self.familiar, "familiar")
43480
+ function DebugDisplay.prototype.toggleFamiliarDisplay(self, force)
43481
+ self:toggleFeature(self.familiar, "familiar", force)
43388
43482
  end
43389
- function DebugDisplay.prototype.toggleBombDisplay(self)
43390
- self:toggleFeature(self.bomb, "bomb")
43483
+ function DebugDisplay.prototype.toggleBombDisplay(self, force)
43484
+ self:toggleFeature(self.bomb, "bomb", force)
43391
43485
  end
43392
- function DebugDisplay.prototype.togglePickupDisplay(self)
43393
- self:toggleFeature(self.pickup, "pickup")
43486
+ function DebugDisplay.prototype.togglePickupDisplay(self, force)
43487
+ self:toggleFeature(self.pickup, "pickup", force)
43394
43488
  end
43395
- function DebugDisplay.prototype.toggleSlotDisplay(self)
43396
- self:toggleFeature(self.slot, "slot")
43489
+ function DebugDisplay.prototype.toggleSlotDisplay(self, force)
43490
+ self:toggleFeature(self.slot, "slot", force)
43397
43491
  end
43398
- function DebugDisplay.prototype.toggleLaserDisplay(self)
43399
- self:toggleFeature(self.laser, "laser")
43492
+ function DebugDisplay.prototype.toggleLaserDisplay(self, force)
43493
+ self:toggleFeature(self.laser, "laser", force)
43400
43494
  end
43401
- function DebugDisplay.prototype.toggleKnifeDisplay(self)
43402
- self:toggleFeature(self.knife, "knife")
43495
+ function DebugDisplay.prototype.toggleKnifeDisplay(self, force)
43496
+ self:toggleFeature(self.knife, "knife", force)
43403
43497
  end
43404
- function DebugDisplay.prototype.toggleProjectileDisplay(self)
43405
- self:toggleFeature(self.projectile, "projectile")
43498
+ function DebugDisplay.prototype.toggleProjectileDisplay(self, force)
43499
+ self:toggleFeature(self.projectile, "projectile", force)
43406
43500
  end
43407
- function DebugDisplay.prototype.toggleEffectDisplay(self)
43408
- self:toggleFeature(self.effect, "effect")
43501
+ function DebugDisplay.prototype.toggleEffectDisplay(self, force)
43502
+ self:toggleFeature(self.effect, "effect", force)
43409
43503
  end
43410
- function DebugDisplay.prototype.toggleNPCDisplay(self)
43411
- self:toggleFeature(self.npc, "NPC")
43504
+ function DebugDisplay.prototype.toggleNPCDisplay(self, force)
43505
+ self:toggleFeature(self.npc, "NPC", force)
43412
43506
  end
43413
- function DebugDisplay.prototype.toggleRockDisplay(self)
43414
- self:toggleFeature(self.rock, "rock")
43507
+ function DebugDisplay.prototype.toggleRockDisplay(self, force)
43508
+ self:toggleFeature(self.rock, "rock", force)
43415
43509
  end
43416
- function DebugDisplay.prototype.togglePitDisplay(self)
43417
- self:toggleFeature(self.pit, "pit")
43510
+ function DebugDisplay.prototype.togglePitDisplay(self, force)
43511
+ self:toggleFeature(self.pit, "pit", force)
43418
43512
  end
43419
- function DebugDisplay.prototype.toggleSpikesDisplay(self)
43420
- self:toggleFeature(self.spikes, "spikes")
43513
+ function DebugDisplay.prototype.toggleSpikesDisplay(self, force)
43514
+ self:toggleFeature(self.spikes, "spikes", force)
43421
43515
  end
43422
- function DebugDisplay.prototype.toggleTNTDisplay(self)
43423
- self:toggleFeature(self.tnt, "tnt")
43516
+ function DebugDisplay.prototype.toggleTNTDisplay(self, force)
43517
+ self:toggleFeature(self.tnt, "tnt", force)
43424
43518
  end
43425
- function DebugDisplay.prototype.togglePoopDisplay(self)
43426
- self:toggleFeature(self.poop, "poop")
43519
+ function DebugDisplay.prototype.togglePoopDisplay(self, force)
43520
+ self:toggleFeature(self.poop, "poop", force)
43427
43521
  end
43428
- function DebugDisplay.prototype.toggleDoorDisplay(self)
43429
- self:toggleFeature(self.door, "door")
43522
+ function DebugDisplay.prototype.toggleDoorDisplay(self, force)
43523
+ self:toggleFeature(self.door, "door", force)
43430
43524
  end
43431
- function DebugDisplay.prototype.togglePressurePlateDisplay(self)
43432
- self:toggleFeature(self.pressurePlate, "pressure plate")
43525
+ function DebugDisplay.prototype.togglePressurePlateDisplay(self, force)
43526
+ self:toggleFeature(self.pressurePlate, "pressure plate", force)
43433
43527
  end
43434
43528
  __TS__Decorate({Exported}, DebugDisplay.prototype, "setPlayerDisplay", true)
43435
43529
  __TS__Decorate({Exported}, DebugDisplay.prototype, "setTearDisplay", true)
@@ -43511,12 +43605,12 @@ local getVanillaWallGridIndexSetForRoomShape, getWallGridIndexSetForRectangleRoo
43511
43605
  local ____isaac_2Dtypescript_2Ddefinitions = require("lua_modules.isaac-typescript-definitions.dist.src.index")
43512
43606
  local BossID = ____isaac_2Dtypescript_2Ddefinitions.BossID
43513
43607
  local RoomShape = ____isaac_2Dtypescript_2Ddefinitions.RoomShape
43608
+ local ____cachedEnumValues = require("src.arrays.cachedEnumValues")
43609
+ local ROOM_SHAPE_VALUES = ____cachedEnumValues.ROOM_SHAPE_VALUES
43514
43610
  local ____cachedClasses = require("src.core.cachedClasses")
43515
43611
  local game = ____cachedClasses.game
43516
43612
  local ____CornerType = require("src.enums.CornerType")
43517
43613
  local CornerType = ____CornerType.CornerType
43518
- local ____enums = require("src.functions.enums")
43519
- local getEnumValues = ____enums.getEnumValues
43520
43614
  local ____gridIndex = require("src.functions.gridIndex")
43521
43615
  local getGridIndexesBetween = ____gridIndex.getGridIndexesBetween
43522
43616
  local ____rooms = require("src.functions.rooms")
@@ -43694,7 +43788,7 @@ function getWallGridIndexSetForRectangleRoomShape(self, roomShape, corners)
43694
43788
  end
43695
43789
  local ROOM_SHAPE_TO_WALL_GRID_INDEX_SET = (function()
43696
43790
  local roomShapeToWallGridIndexSet = __TS__New(Map)
43697
- for ____, roomShape in ipairs(getEnumValues(nil, RoomShape)) do
43791
+ for ____, roomShape in ipairs(ROOM_SHAPE_VALUES) do
43698
43792
  local gridIndexSet = getVanillaWallGridIndexSetForRoomShape(nil, roomShape)
43699
43793
  roomShapeToWallGridIndexSet:set(roomShape, gridIndexSet)
43700
43794
  end
@@ -44459,10 +44553,11 @@ local EntityCollisionClass = ____isaac_2Dtypescript_2Ddefinitions.EntityCollisio
44459
44553
  local EntityGridCollisionClass = ____isaac_2Dtypescript_2Ddefinitions.EntityGridCollisionClass
44460
44554
  local EntityType = ____isaac_2Dtypescript_2Ddefinitions.EntityType
44461
44555
  local GridEntityType = ____isaac_2Dtypescript_2Ddefinitions.GridEntityType
44462
- local GridEntityXMLType = ____isaac_2Dtypescript_2Ddefinitions.GridEntityXMLType
44463
44556
  local PickupVariant = ____isaac_2Dtypescript_2Ddefinitions.PickupVariant
44464
44557
  local PitfallVariant = ____isaac_2Dtypescript_2Ddefinitions.PitfallVariant
44465
44558
  local RoomType = ____isaac_2Dtypescript_2Ddefinitions.RoomType
44559
+ local ____cachedEnumValues = require("src.arrays.cachedEnumValues")
44560
+ local GRID_ENTITY_XML_TYPE_VALUES = ____cachedEnumValues.GRID_ENTITY_XML_TYPE_VALUES
44466
44561
  local ____cachedClasses = require("src.core.cachedClasses")
44467
44562
  local game = ____cachedClasses.game
44468
44563
  local ____decorators = require("src.decorators")
@@ -44474,8 +44569,6 @@ local emptyRoom = ____emptyRoom.emptyRoom
44474
44569
  local ____entities = require("src.functions.entities")
44475
44570
  local getEntityIDFromConstituents = ____entities.getEntityIDFromConstituents
44476
44571
  local spawnWithSeed = ____entities.spawnWithSeed
44477
- local ____enums = require("src.functions.enums")
44478
- local getEnumValues = ____enums.getEnumValues
44479
44572
  local ____gridEntities = require("src.functions.gridEntities")
44480
44573
  local convertXMLGridEntityType = ____gridEntities.convertXMLGridEntityType
44481
44574
  local getGridEntities = ____gridEntities.getGridEntities
@@ -44630,8 +44723,7 @@ function getPitFrame(self, L, R, U, D, UL, UR, DL, DR)
44630
44723
  end
44631
44724
  return F
44632
44725
  end
44633
- local gridEntityXMLTypes = getEnumValues(nil, GridEntityXMLType)
44634
- local GRID_ENTITY_XML_TYPE_SET = __TS__New(ReadonlySet, gridEntityXMLTypes)
44726
+ local GRID_ENTITY_XML_TYPE_SET = __TS__New(ReadonlySet, GRID_ENTITY_XML_TYPE_VALUES)
44635
44727
  ____exports.DeployJSONRoom = __TS__Class()
44636
44728
  local DeployJSONRoom = ____exports.DeployJSONRoom
44637
44729
  DeployJSONRoom.name = "DeployJSONRoom"
@@ -45942,6 +46034,8 @@ local __TS__ArraySlice = ____lualib.__TS__ArraySlice
45942
46034
  local ____exports = {}
45943
46035
  local ____isaac_2Dtypescript_2Ddefinitions = require("lua_modules.isaac-typescript-definitions.dist.src.index")
45944
46036
  local PillColor = ____isaac_2Dtypescript_2Ddefinitions.PillColor
46037
+ local ____cachedEnumValues = require("src.arrays.cachedEnumValues")
46038
+ local PILL_COLOR_VALUES = ____cachedEnumValues.PILL_COLOR_VALUES
45945
46039
  local ____cachedClasses = require("src.core.cachedClasses")
45946
46040
  local itemConfig = ____cachedClasses.itemConfig
45947
46041
  local ____constantsFirstLast = require("src.core.constantsFirstLast")
@@ -45964,8 +46058,6 @@ local PILL_EFFECT_NAMES = ____pillEffectNames.PILL_EFFECT_NAMES
45964
46058
  local ____pillEffectTypes = require("src.objects.pillEffectTypes")
45965
46059
  local DEFAULT_PILL_EFFECT_TYPE = ____pillEffectTypes.DEFAULT_PILL_EFFECT_TYPE
45966
46060
  local PILL_EFFECT_TYPES = ____pillEffectTypes.PILL_EFFECT_TYPES
45967
- local ____enums = require("src.functions.enums")
45968
- local getEnumValues = ____enums.getEnumValues
45969
46061
  local ____types = require("src.functions.types")
45970
46062
  local asNumber = ____types.asNumber
45971
46063
  local asPillColor = ____types.asPillColor
@@ -45976,9 +46068,7 @@ function ____exports.isVanillaPillEffect(self, pillEffect)
45976
46068
  end
45977
46069
  local HORSE_PILL_ADJUSTMENT = 2048
45978
46070
  function ____exports.getAllPillColors(self)
45979
- local pillColors = getEnumValues(nil, PillColor)
45980
- __TS__ArraySlice(pillColors)
45981
- return pillColors
46071
+ return __TS__ArraySlice(PILL_COLOR_VALUES, 1)
45982
46072
  end
45983
46073
  function ____exports.getFalsePHDPillEffect(self, pillEffect)
45984
46074
  local convertedPillEffect = FALSE_PHD_PILL_CONVERSIONS:get(pillEffect)
@@ -46961,12 +47051,14 @@ local CollectibleType = ____isaac_2Dtypescript_2Ddefinitions.CollectibleType
46961
47051
  local Direction = ____isaac_2Dtypescript_2Ddefinitions.Direction
46962
47052
  local DisplayFlag = ____isaac_2Dtypescript_2Ddefinitions.DisplayFlag
46963
47053
  local GameStateFlag = ____isaac_2Dtypescript_2Ddefinitions.GameStateFlag
46964
- local GridEntityType = ____isaac_2Dtypescript_2Ddefinitions.GridEntityType
46965
47054
  local GridRoom = ____isaac_2Dtypescript_2Ddefinitions.GridRoom
46966
47055
  local LevelStage = ____isaac_2Dtypescript_2Ddefinitions.LevelStage
46967
47056
  local PillColor = ____isaac_2Dtypescript_2Ddefinitions.PillColor
46968
47057
  local RoomType = ____isaac_2Dtypescript_2Ddefinitions.RoomType
46969
47058
  local StageType = ____isaac_2Dtypescript_2Ddefinitions.StageType
47059
+ local ____cachedEnumValues = require("src.arrays.cachedEnumValues")
47060
+ local ACTIVE_SLOT_VALUES = ____cachedEnumValues.ACTIVE_SLOT_VALUES
47061
+ local GRID_ENTITY_TYPE_VALUES = ____cachedEnumValues.GRID_ENTITY_TYPE_VALUES
46970
47062
  local ____cachedClasses = require("src.core.cachedClasses")
46971
47063
  local game = ____cachedClasses.game
46972
47064
  local sfxManager = ____cachedClasses.sfxManager
@@ -47000,8 +47092,6 @@ local ____deepCopyTests = require("src.functions.deepCopyTests")
47000
47092
  local runDeepCopyTests = ____deepCopyTests.runDeepCopyTests
47001
47093
  local ____entitiesSpecific = require("src.functions.entitiesSpecific")
47002
47094
  local getNPCs = ____entitiesSpecific.getNPCs
47003
- local ____enums = require("src.functions.enums")
47004
- local getEnumValues = ____enums.getEnumValues
47005
47095
  local ____flag = require("src.functions.flag")
47006
47096
  local addFlag = ____flag.addFlag
47007
47097
  local ____gridEntities = require("src.functions.gridEntities")
@@ -47516,7 +47606,6 @@ function ____exports.grid2(self)
47516
47606
  ____exports.gridCosts(nil)
47517
47607
  end
47518
47608
  function ____exports.gridEntities(self)
47519
- local gridEntityTypes = getEnumValues(nil, GridEntityType)
47520
47609
  local gridEntityTypeIndex = -1
47521
47610
  do
47522
47611
  local y = 0
@@ -47525,7 +47614,7 @@ function ____exports.gridEntities(self)
47525
47614
  local x = 0
47526
47615
  while x <= 12 do
47527
47616
  gridEntityTypeIndex = gridEntityTypeIndex + 1
47528
- local gridEntityType = gridEntityTypes[gridEntityTypeIndex + 1]
47617
+ local gridEntityType = GRID_ENTITY_TYPE_VALUES[gridEntityTypeIndex + 1]
47529
47618
  if gridEntityType == nil then
47530
47619
  return
47531
47620
  end
@@ -47791,8 +47880,7 @@ function ____exports.setCharges(self, params)
47791
47880
  print("The provided slot number is invalid: " .. tostring(activeSlotString))
47792
47881
  return
47793
47882
  end
47794
- local activeSlots = getEnumValues(nil, ActiveSlot)
47795
- if not __TS__ArrayIncludes(activeSlots, activeSlot) then
47883
+ if not __TS__ArrayIncludes(ACTIVE_SLOT_VALUES, activeSlot) then
47796
47884
  print("The provided slot number is invalid: " .. tostring(activeSlot))
47797
47885
  return
47798
47886
  end
@@ -51061,12 +51149,10 @@ return ____exports
51061
51149
  end,
51062
51150
  ["src.functions.level"] = function(...)
51063
51151
  local ____exports = {}
51064
- local ____isaac_2Dtypescript_2Ddefinitions = require("lua_modules.isaac-typescript-definitions.dist.src.index")
51065
- local DoorSlot = ____isaac_2Dtypescript_2Ddefinitions.DoorSlot
51152
+ local ____cachedEnumValues = require("src.arrays.cachedEnumValues")
51153
+ local DOOR_SLOT_VALUES = ____cachedEnumValues.DOOR_SLOT_VALUES
51066
51154
  local ____cachedClasses = require("src.core.cachedClasses")
51067
51155
  local game = ____cachedClasses.game
51068
- local ____enums = require("src.functions.enums")
51069
- local getEnumValues = ____enums.getEnumValues
51070
51156
  local ____levelGrid = require("src.functions.levelGrid")
51071
51157
  local isDoorSlotValidAtGridIndexForRedRoom = ____levelGrid.isDoorSlotValidAtGridIndexForRedRoom
51072
51158
  local ____rooms = require("src.functions.rooms")
@@ -51080,7 +51166,7 @@ function ____exports.fillLevelWithRedRooms(self)
51080
51166
  local roomsInGrid = getRoomsInsideGrid(nil)
51081
51167
  numRoomsInGrid = #roomsInGrid
51082
51168
  for ____, roomDescriptor in ipairs(roomsInGrid) do
51083
- for ____, doorSlot in ipairs(getEnumValues(nil, DoorSlot)) do
51169
+ for ____, doorSlot in ipairs(DOOR_SLOT_VALUES) do
51084
51170
  if isDoorSlotValidAtGridIndexForRedRoom(nil, doorSlot, roomDescriptor.GridIndex) then
51085
51171
  level:MakeRedRoomDoor(roomDescriptor.GridIndex, doorSlot)
51086
51172
  end
@@ -51227,11 +51313,10 @@ local CardType = ____isaac_2Dtypescript_2Ddefinitions.CardType
51227
51313
  local CollectibleType = ____isaac_2Dtypescript_2Ddefinitions.CollectibleType
51228
51314
  local PillColor = ____isaac_2Dtypescript_2Ddefinitions.PillColor
51229
51315
  local PlayerType = ____isaac_2Dtypescript_2Ddefinitions.PlayerType
51230
- local PocketItemSlot = ____isaac_2Dtypescript_2Ddefinitions.PocketItemSlot
51316
+ local ____cachedEnumValues = require("src.arrays.cachedEnumValues")
51317
+ local POCKET_ITEM_SLOT_VALUES = ____cachedEnumValues.POCKET_ITEM_SLOT_VALUES
51231
51318
  local ____PocketItemType = require("src.enums.PocketItemType")
51232
51319
  local PocketItemType = ____PocketItemType.PocketItemType
51233
- local ____enums = require("src.functions.enums")
51234
- local getEnumValues = ____enums.getEnumValues
51235
51320
  local ____players = require("src.functions.players")
51236
51321
  local isCharacter = ____players.isCharacter
51237
51322
  local ____types = require("src.functions.types")
@@ -51242,11 +51327,10 @@ function ____exports.getPocketItems(self, player)
51242
51327
  local pocketItem2 = player:GetActiveItem(ActiveSlot.POCKET_SINGLE_USE)
51243
51328
  local hasPocketItem2 = pocketItem2 ~= CollectibleType.NULL
51244
51329
  local maxPocketItems = player:GetMaxPocketItems()
51245
- local pocketItemSlots = getEnumValues(nil, PocketItemSlot)
51246
51330
  local pocketItems = {}
51247
51331
  local pocketItemIdentified = false
51248
51332
  local pocketItem2Identified = false
51249
- for ____, slot in ipairs(pocketItemSlots) do
51333
+ for ____, slot in ipairs(POCKET_ITEM_SLOT_VALUES) do
51250
51334
  local cardType = player:GetCard(slot)
51251
51335
  local pillColor = player:GetPill(slot)
51252
51336
  if cardType ~= CardType.NULL then
@@ -51379,6 +51463,8 @@ local ____exports = {}
51379
51463
  local ____isaac_2Dtypescript_2Ddefinitions = require("lua_modules.isaac-typescript-definitions.dist.src.index")
51380
51464
  local ItemConfigTag = ____isaac_2Dtypescript_2Ddefinitions.ItemConfigTag
51381
51465
  local PlayerForm = ____isaac_2Dtypescript_2Ddefinitions.PlayerForm
51466
+ local ____cachedEnumValues = require("src.arrays.cachedEnumValues")
51467
+ local PLAYER_FORM_VALUES = ____cachedEnumValues.PLAYER_FORM_VALUES
51382
51468
  local ____transformationNames = require("src.objects.transformationNames")
51383
51469
  local TRANSFORMATION_NAMES = ____transformationNames.TRANSFORMATION_NAMES
51384
51470
  local ____ReadonlyMap = require("src.types.ReadonlyMap")
@@ -51387,8 +51473,6 @@ local ____ReadonlySet = require("src.types.ReadonlySet")
51387
51473
  local ReadonlySet = ____ReadonlySet.ReadonlySet
51388
51474
  local ____collectibles = require("src.functions.collectibles")
51389
51475
  local getCollectibleTags = ____collectibles.getCollectibleTags
51390
- local ____enums = require("src.functions.enums")
51391
- local getEnumValues = ____enums.getEnumValues
51392
51476
  local ____flag = require("src.functions.flag")
51393
51477
  local hasFlag = ____flag.hasFlag
51394
51478
  local TRANSFORMATION_TO_TAG_MAP = __TS__New(ReadonlyMap, {
@@ -51408,7 +51492,7 @@ local TRANSFORMATION_TO_TAG_MAP = __TS__New(ReadonlyMap, {
51408
51492
  local TRANSFORMATIONS_THAT_GRANT_FLYING = __TS__New(ReadonlySet, {PlayerForm.GUPPY, PlayerForm.BEELZEBUB, PlayerForm.SERAPHIM, PlayerForm.LEVIATHAN})
51409
51493
  function ____exports.getPlayerTransformations(self, player)
51410
51494
  local transformations = __TS__New(Set)
51411
- for ____, playerForm in ipairs(getEnumValues(nil, PlayerForm)) do
51495
+ for ____, playerForm in ipairs(PLAYER_FORM_VALUES) do
51412
51496
  if player:HasPlayerForm(playerForm) then
51413
51497
  transformations:add(playerForm)
51414
51498
  end
@@ -51420,9 +51504,8 @@ function ____exports.getTransformationName(self, playerForm)
51420
51504
  end
51421
51505
  function ____exports.getTransformationsForCollectibleType(self, collectibleType)
51422
51506
  local itemConfigTags = getCollectibleTags(nil, collectibleType)
51423
- local playerForms = getEnumValues(nil, PlayerForm)
51424
51507
  local transformationSet = __TS__New(Set)
51425
- for ____, playerForm in ipairs(playerForms) do
51508
+ for ____, playerForm in ipairs(PLAYER_FORM_VALUES) do
51426
51509
  do
51427
51510
  local itemConfigTag = TRANSFORMATION_TO_TAG_MAP:get(playerForm)
51428
51511
  if itemConfigTag == nil then