isaacscript-common 7.4.3 → 7.6.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 (183) hide show
  1. package/dist/callbacks/postGridEntity.d.ts.map +1 -1
  2. package/dist/callbacks/postGridEntity.lua +53 -6
  3. package/dist/callbacks/postPlayerChangeStat.d.ts.map +1 -1
  4. package/dist/callbacks/postPlayerChangeStat.lua +9 -2
  5. package/dist/callbacks/subscriptions/postGridEntityCustomBroken.d.ts +1 -0
  6. package/dist/callbacks/subscriptions/postGridEntityCustomBroken.d.ts.map +1 -1
  7. package/dist/callbacks/subscriptions/postGridEntityCustomBroken.lua +5 -2
  8. package/dist/callbacks/subscriptions/postGridEntityCustomInit.d.ts +9 -0
  9. package/dist/callbacks/subscriptions/postGridEntityCustomInit.d.ts.map +1 -0
  10. package/dist/callbacks/subscriptions/postGridEntityCustomInit.lua +23 -0
  11. package/dist/callbacks/subscriptions/postGridEntityCustomRemove.d.ts +9 -0
  12. package/dist/callbacks/subscriptions/postGridEntityCustomRemove.d.ts.map +1 -0
  13. package/dist/callbacks/subscriptions/postGridEntityCustomRemove.lua +23 -0
  14. package/dist/callbacks/subscriptions/postGridEntityCustomStateChanged.d.ts +9 -0
  15. package/dist/callbacks/subscriptions/postGridEntityCustomStateChanged.d.ts.map +1 -0
  16. package/dist/callbacks/subscriptions/postGridEntityCustomStateChanged.lua +29 -0
  17. package/dist/callbacks/subscriptions/postPlayerChangeStat.d.ts +3 -2
  18. package/dist/callbacks/subscriptions/postPlayerChangeStat.d.ts.map +1 -1
  19. package/dist/classes/DefaultMap.d.ts +3 -2
  20. package/dist/classes/DefaultMap.d.ts.map +1 -1
  21. package/dist/classes/DefaultMap.lua +2 -1
  22. package/dist/enums/ModCallbackCustom.d.ts +131 -81
  23. package/dist/enums/ModCallbackCustom.d.ts.map +1 -1
  24. package/dist/enums/ModCallbackCustom.lua +67 -61
  25. package/dist/enums/StatType.d.ts +3 -1
  26. package/dist/enums/StatType.d.ts.map +1 -1
  27. package/dist/enums/StatType.lua +2 -0
  28. package/dist/features/customGridEntity.d.ts +30 -13
  29. package/dist/features/customGridEntity.d.ts.map +1 -1
  30. package/dist/features/customGridEntity.lua +67 -48
  31. package/dist/features/customStage/customStageGridEntities.d.ts.map +1 -1
  32. package/dist/features/customStage/customStageGridEntities.lua +46 -36
  33. package/dist/features/customStage/customStageUtils.d.ts +2 -1
  34. package/dist/features/customStage/customStageUtils.d.ts.map +1 -1
  35. package/dist/features/customStage/customStageUtils.lua +40 -1
  36. package/dist/features/customStage/exports.d.ts +1 -25
  37. package/dist/features/customStage/exports.d.ts.map +1 -1
  38. package/dist/features/customStage/exports.lua +28 -29
  39. package/dist/features/customStage/v.d.ts +0 -2
  40. package/dist/features/customStage/v.d.ts.map +1 -1
  41. package/dist/features/customStage/v.lua +0 -2
  42. package/dist/features/customStage/versusScreen.d.ts.map +1 -1
  43. package/dist/features/customStage/versusScreen.lua +74 -60
  44. package/dist/features/customTrapdoor/exports.d.ts +28 -16
  45. package/dist/features/customTrapdoor/exports.d.ts.map +1 -1
  46. package/dist/features/customTrapdoor/exports.lua +45 -61
  47. package/dist/features/customTrapdoor/init.d.ts.map +1 -1
  48. package/dist/features/customTrapdoor/init.lua +12 -10
  49. package/dist/features/customTrapdoor/spawn.d.ts +6 -0
  50. package/dist/features/customTrapdoor/spawn.d.ts.map +1 -0
  51. package/dist/features/customTrapdoor/spawn.lua +52 -0
  52. package/dist/features/customTrapdoor/v.d.ts +2 -2
  53. package/dist/features/customTrapdoor/v.d.ts.map +1 -1
  54. package/dist/functions/dev.d.ts +20 -0
  55. package/dist/functions/dev.d.ts.map +1 -0
  56. package/dist/functions/dev.lua +34 -0
  57. package/dist/functions/doors.d.ts +6 -5
  58. package/dist/functions/doors.d.ts.map +1 -1
  59. package/dist/functions/doors.lua +25 -12
  60. package/dist/functions/enums.d.ts +3 -3
  61. package/dist/functions/enums.lua +3 -3
  62. package/dist/functions/playerStats.d.ts.map +1 -1
  63. package/dist/functions/playerStats.lua +2 -1
  64. package/dist/functions/players.d.ts.map +1 -1
  65. package/dist/functions/players.lua +3 -2
  66. package/dist/functions/rooms.d.ts +5 -0
  67. package/dist/functions/rooms.d.ts.map +1 -1
  68. package/dist/functions/rooms.lua +12 -2
  69. package/dist/index.d.ts +172 -11037
  70. package/dist/index.d.ts.map +1 -1
  71. package/dist/index.lua +1134 -8
  72. package/dist/interfaces/{CustomStageLua.d.ts → CustomStageTSConfig.d.ts} +86 -60
  73. package/dist/interfaces/CustomStageTSConfig.d.ts.map +1 -0
  74. package/dist/interfaces/{CustomStageLua.lua → CustomStageTSConfig.lua} +0 -0
  75. package/dist/interfaces/JSONRoomsFile.d.ts +6 -5
  76. package/dist/interfaces/JSONRoomsFile.d.ts.map +1 -1
  77. package/dist/interfaces/StatTypeType.d.ts +1 -0
  78. package/dist/interfaces/StatTypeType.d.ts.map +1 -1
  79. package/dist/interfaces/private/AddCallbackParameterCustom.d.ts +6 -0
  80. package/dist/interfaces/private/AddCallbackParameterCustom.d.ts.map +1 -1
  81. package/dist/interfaces/private/CustomStage.d.ts +1 -1
  82. package/dist/interfaces/private/CustomStage.d.ts.map +1 -1
  83. package/dist/interfaces/private/CustomTrapdoorDescription.d.ts +2 -2
  84. package/dist/interfaces/private/CustomTrapdoorDescription.d.ts.map +1 -1
  85. package/dist/interfaces/private/CustomTrapdoorDestination.d.ts +14 -0
  86. package/dist/interfaces/private/CustomTrapdoorDestination.d.ts.map +1 -0
  87. package/dist/interfaces/{index.lua → private/CustomTrapdoorDestination.lua} +0 -0
  88. package/dist/objects/callbackRegisterFunctions.d.ts.map +1 -1
  89. package/dist/objects/callbackRegisterFunctions.lua +9 -0
  90. package/dist/types/PossibleStatType.d.ts +7 -0
  91. package/dist/types/PossibleStatType.d.ts.map +1 -0
  92. package/dist/types/{TrapdoorDestination.lua → PossibleStatType.lua} +0 -0
  93. package/package.json +1 -1
  94. package/src/callbacks/postGridEntity.ts +75 -10
  95. package/src/callbacks/postPlayerChangeStat.ts +8 -4
  96. package/src/callbacks/subscriptions/postGridEntityCustomBroken.ts +4 -0
  97. package/src/callbacks/subscriptions/postGridEntityCustomInit.ts +38 -0
  98. package/src/callbacks/subscriptions/postGridEntityCustomRemove.ts +35 -0
  99. package/src/callbacks/subscriptions/postGridEntityCustomStateChanged.ts +42 -0
  100. package/src/callbacks/subscriptions/postPlayerChangeStat.ts +4 -7
  101. package/src/classes/DefaultMap.ts +3 -2
  102. package/src/enums/ModCallbackCustom.ts +73 -20
  103. package/src/enums/StatType.ts +3 -3
  104. package/src/features/customGridEntity.ts +87 -61
  105. package/src/features/customStage/customStageGridEntities.ts +36 -23
  106. package/src/features/customStage/customStageUtils.ts +52 -1
  107. package/src/features/customStage/exports.ts +33 -45
  108. package/src/features/customStage/init.ts +1 -1
  109. package/src/features/customStage/v.ts +0 -6
  110. package/src/features/customStage/versusScreen.ts +70 -55
  111. package/src/features/customTrapdoor/exports.ts +60 -66
  112. package/src/features/customTrapdoor/init.ts +12 -11
  113. package/src/features/customTrapdoor/spawn.ts +54 -0
  114. package/src/features/customTrapdoor/v.ts +2 -2
  115. package/src/functions/dev.ts +31 -0
  116. package/src/functions/doors.ts +37 -21
  117. package/src/functions/enums.ts +3 -3
  118. package/src/functions/playerStats.ts +1 -0
  119. package/src/functions/players.ts +7 -3
  120. package/src/functions/rooms.ts +18 -0
  121. package/src/index.ts +207 -9
  122. package/src/interfaces/{CustomStageLua.ts → CustomStageTSConfig.ts} +107 -41
  123. package/src/interfaces/JSONRoomsFile.ts +6 -5
  124. package/src/interfaces/StatTypeType.ts +1 -0
  125. package/src/interfaces/private/AddCallbackParameterCustom.ts +6 -0
  126. package/src/interfaces/private/CustomStage.ts +4 -1
  127. package/src/interfaces/private/CustomTrapdoorDescription.ts +2 -2
  128. package/src/interfaces/private/CustomTrapdoorDestination.ts +14 -0
  129. package/src/objects/callbackRegisterFunctions.ts +9 -0
  130. package/src/types/PossibleStatType.ts +12 -0
  131. package/dist/classes/index.d.ts +0 -3
  132. package/dist/classes/index.d.ts.map +0 -1
  133. package/dist/classes/index.lua +0 -18
  134. package/dist/core/index.d.ts +0 -5
  135. package/dist/core/index.d.ts.map +0 -1
  136. package/dist/core/index.lua +0 -34
  137. package/dist/enums/DecorationVariant.d.ts +0 -10
  138. package/dist/enums/DecorationVariant.d.ts.map +0 -1
  139. package/dist/enums/DecorationVariant.lua +0 -7
  140. package/dist/enums/index.d.ts +0 -11
  141. package/dist/enums/index.d.ts.map +0 -1
  142. package/dist/enums/index.lua +0 -82
  143. package/dist/features/index.d.ts +0 -30
  144. package/dist/features/index.d.ts.map +0 -1
  145. package/dist/features/index.lua +0 -216
  146. package/dist/functions/index.d.ts +0 -100
  147. package/dist/functions/index.d.ts.map +0 -1
  148. package/dist/functions/index.lua +0 -794
  149. package/dist/interfaces/CustomStageLua.d.ts.map +0 -1
  150. package/dist/interfaces/index.d.ts +0 -12
  151. package/dist/interfaces/index.d.ts.map +0 -1
  152. package/dist/maps/index.d.ts +0 -5
  153. package/dist/maps/index.d.ts.map +0 -1
  154. package/dist/maps/index.lua +0 -34
  155. package/dist/objects/index.d.ts +0 -2
  156. package/dist/objects/index.d.ts.map +0 -1
  157. package/dist/objects/index.lua +0 -10
  158. package/dist/types/TrapdoorDestination.d.ts +0 -6
  159. package/dist/types/TrapdoorDestination.d.ts.map +0 -1
  160. package/dist/types/index.d.ts +0 -11
  161. package/dist/types/index.d.ts.map +0 -1
  162. package/dist/types/index.lua +0 -10
  163. package/src/classes/index.ts +0 -2
  164. package/src/classes/indexTypeDoc.ts +0 -2
  165. package/src/core/index.ts +0 -4
  166. package/src/core/indexTypeDoc.ts +0 -4
  167. package/src/enums/DecorationVariant.ts +0 -10
  168. package/src/enums/index.ts +0 -10
  169. package/src/enums/indexTypeDoc.ts +0 -10
  170. package/src/features/index.ts +0 -59
  171. package/src/features/indexTypeDoc.ts +0 -30
  172. package/src/functions/index.ts +0 -101
  173. package/src/functions/indexTypeDoc.ts +0 -101
  174. package/src/indexTypeDoc.ts +0 -13
  175. package/src/interfaces/index.ts +0 -11
  176. package/src/interfaces/indexTypeDoc.ts +0 -11
  177. package/src/maps/index.ts +0 -4
  178. package/src/maps/indexTypeDoc.ts +0 -4
  179. package/src/objects/index.ts +0 -1
  180. package/src/objects/indexTypeDoc.ts +0 -1
  181. package/src/types/TrapdoorDestination.ts +0 -8
  182. package/src/types/index.ts +0 -10
  183. package/src/types/indexTypeDoc.ts +0 -10
@@ -1 +1 @@
1
- {"version":3,"file":"ModCallbackCustom.d.ts","sourceRoot":"","sources":["../../src/enums/ModCallbackCustom.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ModCallbackCustom.d.ts","sourceRoot":"","sources":["../../src/enums/ModCallbackCustom.ts"],"names":[],"mappings":"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"}
@@ -60,126 +60,132 @@ ____exports.ModCallbackCustom.POST_GRID_ENTITY_CUSTOM_BROKEN = 25
60
60
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_GRID_ENTITY_CUSTOM_BROKEN] = "POST_GRID_ENTITY_CUSTOM_BROKEN"
61
61
  ____exports.ModCallbackCustom.POST_GRID_ENTITY_CUSTOM_COLLISION = 26
62
62
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_GRID_ENTITY_CUSTOM_COLLISION] = "POST_GRID_ENTITY_CUSTOM_COLLISION"
63
- ____exports.ModCallbackCustom.POST_GRID_ENTITY_CUSTOM_RENDER = 27
63
+ ____exports.ModCallbackCustom.POST_GRID_ENTITY_CUSTOM_INIT = 27
64
+ ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_GRID_ENTITY_CUSTOM_INIT] = "POST_GRID_ENTITY_CUSTOM_INIT"
65
+ ____exports.ModCallbackCustom.POST_GRID_ENTITY_CUSTOM_REMOVE = 28
66
+ ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_GRID_ENTITY_CUSTOM_REMOVE] = "POST_GRID_ENTITY_CUSTOM_REMOVE"
67
+ ____exports.ModCallbackCustom.POST_GRID_ENTITY_CUSTOM_RENDER = 29
64
68
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_GRID_ENTITY_CUSTOM_RENDER] = "POST_GRID_ENTITY_CUSTOM_RENDER"
65
- ____exports.ModCallbackCustom.POST_GRID_ENTITY_CUSTOM_UPDATE = 28
69
+ ____exports.ModCallbackCustom.POST_GRID_ENTITY_CUSTOM_STATE_CHANGED = 30
70
+ ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_GRID_ENTITY_CUSTOM_STATE_CHANGED] = "POST_GRID_ENTITY_CUSTOM_STATE_CHANGED"
71
+ ____exports.ModCallbackCustom.POST_GRID_ENTITY_CUSTOM_UPDATE = 31
66
72
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_GRID_ENTITY_CUSTOM_UPDATE] = "POST_GRID_ENTITY_CUSTOM_UPDATE"
67
- ____exports.ModCallbackCustom.POST_GRID_ENTITY_INIT = 29
73
+ ____exports.ModCallbackCustom.POST_GRID_ENTITY_INIT = 32
68
74
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_GRID_ENTITY_INIT] = "POST_GRID_ENTITY_INIT"
69
- ____exports.ModCallbackCustom.POST_GRID_ENTITY_REMOVE = 30
75
+ ____exports.ModCallbackCustom.POST_GRID_ENTITY_REMOVE = 33
70
76
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_GRID_ENTITY_REMOVE] = "POST_GRID_ENTITY_REMOVE"
71
- ____exports.ModCallbackCustom.POST_GRID_ENTITY_RENDER = 31
77
+ ____exports.ModCallbackCustom.POST_GRID_ENTITY_RENDER = 34
72
78
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_GRID_ENTITY_RENDER] = "POST_GRID_ENTITY_RENDER"
73
- ____exports.ModCallbackCustom.POST_GRID_ENTITY_STATE_CHANGED = 32
79
+ ____exports.ModCallbackCustom.POST_GRID_ENTITY_STATE_CHANGED = 35
74
80
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_GRID_ENTITY_STATE_CHANGED] = "POST_GRID_ENTITY_STATE_CHANGED"
75
- ____exports.ModCallbackCustom.POST_GRID_ENTITY_UPDATE = 33
81
+ ____exports.ModCallbackCustom.POST_GRID_ENTITY_UPDATE = 36
76
82
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_GRID_ENTITY_UPDATE] = "POST_GRID_ENTITY_UPDATE"
77
- ____exports.ModCallbackCustom.POST_HOLY_MANTLE_REMOVED = 34
83
+ ____exports.ModCallbackCustom.POST_HOLY_MANTLE_REMOVED = 37
78
84
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_HOLY_MANTLE_REMOVED] = "POST_HOLY_MANTLE_REMOVED"
79
- ____exports.ModCallbackCustom.POST_ITEM_DISCHARGE = 35
85
+ ____exports.ModCallbackCustom.POST_ITEM_DISCHARGE = 38
80
86
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_ITEM_DISCHARGE] = "POST_ITEM_DISCHARGE"
81
- ____exports.ModCallbackCustom.POST_ITEM_PICKUP = 36
87
+ ____exports.ModCallbackCustom.POST_ITEM_PICKUP = 39
82
88
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_ITEM_PICKUP] = "POST_ITEM_PICKUP"
83
- ____exports.ModCallbackCustom.POST_KNIFE_INIT_LATE = 37
89
+ ____exports.ModCallbackCustom.POST_KNIFE_INIT_LATE = 40
84
90
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_KNIFE_INIT_LATE] = "POST_KNIFE_INIT_LATE"
85
- ____exports.ModCallbackCustom.POST_LASER_INIT_LATE = 38
91
+ ____exports.ModCallbackCustom.POST_LASER_INIT_LATE = 41
86
92
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_LASER_INIT_LATE] = "POST_LASER_INIT_LATE"
87
- ____exports.ModCallbackCustom.POST_NEW_LEVEL_REORDERED = 39
93
+ ____exports.ModCallbackCustom.POST_NEW_LEVEL_REORDERED = 42
88
94
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_NEW_LEVEL_REORDERED] = "POST_NEW_LEVEL_REORDERED"
89
- ____exports.ModCallbackCustom.POST_NEW_ROOM_EARLY = 40
95
+ ____exports.ModCallbackCustom.POST_NEW_ROOM_EARLY = 43
90
96
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_NEW_ROOM_EARLY] = "POST_NEW_ROOM_EARLY"
91
- ____exports.ModCallbackCustom.POST_NEW_ROOM_REORDERED = 41
97
+ ____exports.ModCallbackCustom.POST_NEW_ROOM_REORDERED = 44
92
98
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_NEW_ROOM_REORDERED] = "POST_NEW_ROOM_REORDERED"
93
- ____exports.ModCallbackCustom.POST_NPC_INIT_LATE = 42
99
+ ____exports.ModCallbackCustom.POST_NPC_INIT_LATE = 45
94
100
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_NPC_INIT_LATE] = "POST_NPC_INIT_LATE"
95
- ____exports.ModCallbackCustom.POST_NPC_STATE_CHANGED = 43
101
+ ____exports.ModCallbackCustom.POST_NPC_STATE_CHANGED = 46
96
102
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_NPC_STATE_CHANGED] = "POST_NPC_STATE_CHANGED"
97
- ____exports.ModCallbackCustom.POST_PEFFECT_UPDATE_REORDERED = 44
103
+ ____exports.ModCallbackCustom.POST_PEFFECT_UPDATE_REORDERED = 47
98
104
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_PEFFECT_UPDATE_REORDERED] = "POST_PEFFECT_UPDATE_REORDERED"
99
- ____exports.ModCallbackCustom.POST_PICKUP_COLLECT = 45
105
+ ____exports.ModCallbackCustom.POST_PICKUP_COLLECT = 48
100
106
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_PICKUP_COLLECT] = "POST_PICKUP_COLLECT"
101
- ____exports.ModCallbackCustom.POST_PICKUP_INIT_FIRST = 46
107
+ ____exports.ModCallbackCustom.POST_PICKUP_INIT_FIRST = 49
102
108
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_PICKUP_INIT_FIRST] = "POST_PICKUP_INIT_FIRST"
103
- ____exports.ModCallbackCustom.POST_PICKUP_INIT_LATE = 47
109
+ ____exports.ModCallbackCustom.POST_PICKUP_INIT_LATE = 50
104
110
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_PICKUP_INIT_LATE] = "POST_PICKUP_INIT_LATE"
105
- ____exports.ModCallbackCustom.POST_PICKUP_STATE_CHANGED = 48
111
+ ____exports.ModCallbackCustom.POST_PICKUP_STATE_CHANGED = 51
106
112
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_PICKUP_STATE_CHANGED] = "POST_PICKUP_STATE_CHANGED"
107
- ____exports.ModCallbackCustom.POST_PIT_RENDER = 49
113
+ ____exports.ModCallbackCustom.POST_PIT_RENDER = 52
108
114
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_PIT_RENDER] = "POST_PIT_RENDER"
109
- ____exports.ModCallbackCustom.POST_PIT_UPDATE = 50
115
+ ____exports.ModCallbackCustom.POST_PIT_UPDATE = 53
110
116
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_PIT_UPDATE] = "POST_PIT_UPDATE"
111
- ____exports.ModCallbackCustom.POST_PLAYER_CHANGE_HEALTH = 51
117
+ ____exports.ModCallbackCustom.POST_PLAYER_CHANGE_HEALTH = 54
112
118
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_PLAYER_CHANGE_HEALTH] = "POST_PLAYER_CHANGE_HEALTH"
113
- ____exports.ModCallbackCustom.POST_PLAYER_CHANGE_STAT = 52
119
+ ____exports.ModCallbackCustom.POST_PLAYER_CHANGE_STAT = 55
114
120
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_PLAYER_CHANGE_STAT] = "POST_PLAYER_CHANGE_STAT"
115
- ____exports.ModCallbackCustom.POST_PLAYER_CHANGE_TYPE = 53
121
+ ____exports.ModCallbackCustom.POST_PLAYER_CHANGE_TYPE = 56
116
122
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_PLAYER_CHANGE_TYPE] = "POST_PLAYER_CHANGE_TYPE"
117
- ____exports.ModCallbackCustom.POST_PLAYER_COLLECTIBLE_ADDED = 54
123
+ ____exports.ModCallbackCustom.POST_PLAYER_COLLECTIBLE_ADDED = 57
118
124
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_PLAYER_COLLECTIBLE_ADDED] = "POST_PLAYER_COLLECTIBLE_ADDED"
119
- ____exports.ModCallbackCustom.POST_PLAYER_COLLECTIBLE_REMOVED = 55
125
+ ____exports.ModCallbackCustom.POST_PLAYER_COLLECTIBLE_REMOVED = 58
120
126
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_PLAYER_COLLECTIBLE_REMOVED] = "POST_PLAYER_COLLECTIBLE_REMOVED"
121
- ____exports.ModCallbackCustom.POST_PLAYER_FATAL_DAMAGE = 56
127
+ ____exports.ModCallbackCustom.POST_PLAYER_FATAL_DAMAGE = 59
122
128
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_PLAYER_FATAL_DAMAGE] = "POST_PLAYER_FATAL_DAMAGE"
123
- ____exports.ModCallbackCustom.POST_PLAYER_INIT_FIRST = 57
129
+ ____exports.ModCallbackCustom.POST_PLAYER_INIT_FIRST = 60
124
130
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_PLAYER_INIT_FIRST] = "POST_PLAYER_INIT_FIRST"
125
- ____exports.ModCallbackCustom.POST_PLAYER_INIT_LATE = 58
131
+ ____exports.ModCallbackCustom.POST_PLAYER_INIT_LATE = 61
126
132
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_PLAYER_INIT_LATE] = "POST_PLAYER_INIT_LATE"
127
- ____exports.ModCallbackCustom.POST_PLAYER_RENDER_REORDERED = 59
133
+ ____exports.ModCallbackCustom.POST_PLAYER_RENDER_REORDERED = 62
128
134
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_PLAYER_RENDER_REORDERED] = "POST_PLAYER_RENDER_REORDERED"
129
- ____exports.ModCallbackCustom.POST_PLAYER_UPDATE_REORDERED = 60
135
+ ____exports.ModCallbackCustom.POST_PLAYER_UPDATE_REORDERED = 63
130
136
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_PLAYER_UPDATE_REORDERED] = "POST_PLAYER_UPDATE_REORDERED"
131
- ____exports.ModCallbackCustom.POST_POOP_RENDER = 61
137
+ ____exports.ModCallbackCustom.POST_POOP_RENDER = 64
132
138
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_POOP_RENDER] = "POST_POOP_RENDER"
133
- ____exports.ModCallbackCustom.POST_POOP_UPDATE = 62
139
+ ____exports.ModCallbackCustom.POST_POOP_UPDATE = 65
134
140
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_POOP_UPDATE] = "POST_POOP_UPDATE"
135
- ____exports.ModCallbackCustom.POST_PRESSURE_PLATE_RENDER = 63
141
+ ____exports.ModCallbackCustom.POST_PRESSURE_PLATE_RENDER = 66
136
142
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_PRESSURE_PLATE_RENDER] = "POST_PRESSURE_PLATE_RENDER"
137
- ____exports.ModCallbackCustom.POST_PRESSURE_PLATE_UPDATE = 64
143
+ ____exports.ModCallbackCustom.POST_PRESSURE_PLATE_UPDATE = 67
138
144
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_PRESSURE_PLATE_UPDATE] = "POST_PRESSURE_PLATE_UPDATE"
139
- ____exports.ModCallbackCustom.POST_PROJECTILE_INIT_LATE = 65
145
+ ____exports.ModCallbackCustom.POST_PROJECTILE_INIT_LATE = 68
140
146
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_PROJECTILE_INIT_LATE] = "POST_PROJECTILE_INIT_LATE"
141
- ____exports.ModCallbackCustom.POST_PURCHASE = 66
147
+ ____exports.ModCallbackCustom.POST_PURCHASE = 69
142
148
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_PURCHASE] = "POST_PURCHASE"
143
- ____exports.ModCallbackCustom.POST_ROCK_RENDER = 67
149
+ ____exports.ModCallbackCustom.POST_ROCK_RENDER = 70
144
150
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_ROCK_RENDER] = "POST_ROCK_RENDER"
145
- ____exports.ModCallbackCustom.POST_ROCK_UPDATE = 68
151
+ ____exports.ModCallbackCustom.POST_ROCK_UPDATE = 71
146
152
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_ROCK_UPDATE] = "POST_ROCK_UPDATE"
147
- ____exports.ModCallbackCustom.POST_ROOM_CLEAR_CHANGED = 69
153
+ ____exports.ModCallbackCustom.POST_ROOM_CLEAR_CHANGED = 72
148
154
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_ROOM_CLEAR_CHANGED] = "POST_ROOM_CLEAR_CHANGED"
149
- ____exports.ModCallbackCustom.POST_SACRIFICE = 70
155
+ ____exports.ModCallbackCustom.POST_SACRIFICE = 73
150
156
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_SACRIFICE] = "POST_SACRIFICE"
151
- ____exports.ModCallbackCustom.POST_SLOT_ANIMATION_CHANGED = 71
157
+ ____exports.ModCallbackCustom.POST_SLOT_ANIMATION_CHANGED = 74
152
158
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_SLOT_ANIMATION_CHANGED] = "POST_SLOT_ANIMATION_CHANGED"
153
- ____exports.ModCallbackCustom.POST_SLOT_DESTROYED = 72
159
+ ____exports.ModCallbackCustom.POST_SLOT_DESTROYED = 75
154
160
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_SLOT_DESTROYED] = "POST_SLOT_DESTROYED"
155
- ____exports.ModCallbackCustom.POST_SLOT_INIT = 73
161
+ ____exports.ModCallbackCustom.POST_SLOT_INIT = 76
156
162
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_SLOT_INIT] = "POST_SLOT_INIT"
157
- ____exports.ModCallbackCustom.POST_SLOT_RENDER = 74
163
+ ____exports.ModCallbackCustom.POST_SLOT_RENDER = 77
158
164
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_SLOT_RENDER] = "POST_SLOT_RENDER"
159
- ____exports.ModCallbackCustom.POST_SLOT_UPDATE = 75
165
+ ____exports.ModCallbackCustom.POST_SLOT_UPDATE = 78
160
166
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_SLOT_UPDATE] = "POST_SLOT_UPDATE"
161
- ____exports.ModCallbackCustom.POST_SPIKES_RENDER = 76
167
+ ____exports.ModCallbackCustom.POST_SPIKES_RENDER = 79
162
168
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_SPIKES_RENDER] = "POST_SPIKES_RENDER"
163
- ____exports.ModCallbackCustom.POST_SPIKES_UPDATE = 77
169
+ ____exports.ModCallbackCustom.POST_SPIKES_UPDATE = 80
164
170
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_SPIKES_UPDATE] = "POST_SPIKES_UPDATE"
165
- ____exports.ModCallbackCustom.POST_TEAR_INIT_LATE = 78
171
+ ____exports.ModCallbackCustom.POST_TEAR_INIT_LATE = 81
166
172
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_TEAR_INIT_LATE] = "POST_TEAR_INIT_LATE"
167
- ____exports.ModCallbackCustom.POST_TEAR_INIT_VERY_LATE = 79
173
+ ____exports.ModCallbackCustom.POST_TEAR_INIT_VERY_LATE = 82
168
174
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_TEAR_INIT_VERY_LATE] = "POST_TEAR_INIT_VERY_LATE"
169
- ____exports.ModCallbackCustom.POST_TNT_RENDER = 80
175
+ ____exports.ModCallbackCustom.POST_TNT_RENDER = 83
170
176
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_TNT_RENDER] = "POST_TNT_RENDER"
171
- ____exports.ModCallbackCustom.POST_TNT_UPDATE = 81
177
+ ____exports.ModCallbackCustom.POST_TNT_UPDATE = 84
172
178
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_TNT_UPDATE] = "POST_TNT_UPDATE"
173
- ____exports.ModCallbackCustom.POST_TRANSFORMATION = 82
179
+ ____exports.ModCallbackCustom.POST_TRANSFORMATION = 85
174
180
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_TRANSFORMATION] = "POST_TRANSFORMATION"
175
- ____exports.ModCallbackCustom.POST_TRINKET_BREAK = 83
181
+ ____exports.ModCallbackCustom.POST_TRINKET_BREAK = 86
176
182
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.POST_TRINKET_BREAK] = "POST_TRINKET_BREAK"
177
- ____exports.ModCallbackCustom.PRE_BERSERK_DEATH = 84
183
+ ____exports.ModCallbackCustom.PRE_BERSERK_DEATH = 87
178
184
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.PRE_BERSERK_DEATH] = "PRE_BERSERK_DEATH"
179
- ____exports.ModCallbackCustom.PRE_CUSTOM_REVIVE = 85
185
+ ____exports.ModCallbackCustom.PRE_CUSTOM_REVIVE = 88
180
186
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.PRE_CUSTOM_REVIVE] = "PRE_CUSTOM_REVIVE"
181
- ____exports.ModCallbackCustom.PRE_ITEM_PICKUP = 86
187
+ ____exports.ModCallbackCustom.PRE_ITEM_PICKUP = 89
182
188
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.PRE_ITEM_PICKUP] = "PRE_ITEM_PICKUP"
183
- ____exports.ModCallbackCustom.PRE_NEW_LEVEL = 87
189
+ ____exports.ModCallbackCustom.PRE_NEW_LEVEL = 90
184
190
  ____exports.ModCallbackCustom[____exports.ModCallbackCustom.PRE_NEW_LEVEL] = "PRE_NEW_LEVEL"
185
191
  return ____exports
@@ -23,6 +23,8 @@ export declare enum StatType {
23
23
  /** Corresponds to `CacheFlag.FLYING` (1 << 7) and `EntityPlayer.CanFly`. */
24
24
  FLYING = 10,
25
25
  /** Corresponds to `CacheFlag.LUCK` (1 << 10) and `EntityPlayer.Luck`. */
26
- LUCK = 11
26
+ LUCK = 11,
27
+ /** Corresponds to `CacheFlag.SIZE` (1 << 11) and `EntityPlayer.SpriteScale`. */
28
+ SIZE = 12
27
29
  }
28
30
  //# sourceMappingURL=StatType.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"StatType.d.ts","sourceRoot":"","sources":["../../src/enums/StatType.ts"],"names":[],"mappings":"AAAA,iEAAiE;AACjE,oBAAY,QAAQ;IAClB,4EAA4E;IAC5E,MAAM,IAAA;IAEN,sFAAsF;IACtF,UAAU,IAAA;IAEV,mFAAmF;IACnF,UAAU,IAAA;IAEV,+EAA+E;IAC/E,WAAW,IAAA;IAEX,8EAA8E;IAC9E,UAAU,IAAA;IAEV,4FAA4F;IAC5F,yBAAyB,IAAA;IAEzB,qFAAqF;IACrF,kBAAkB,IAAA;IAElB,8EAA8E;IAC9E,UAAU,IAAA;IAEV,kFAAkF;IAClF,SAAS,IAAA;IAET,mFAAmF;IACnF,UAAU,IAAA;IAEV,4EAA4E;IAC5E,MAAM,KAAA;IAKN,yEAAyE;IACzE,IAAI,KAAA;CAOL"}
1
+ {"version":3,"file":"StatType.d.ts","sourceRoot":"","sources":["../../src/enums/StatType.ts"],"names":[],"mappings":"AAAA,iEAAiE;AACjE,oBAAY,QAAQ;IAClB,4EAA4E;IAC5E,MAAM,IAAA;IAEN,sFAAsF;IACtF,UAAU,IAAA;IAEV,mFAAmF;IACnF,UAAU,IAAA;IAEV,+EAA+E;IAC/E,WAAW,IAAA;IAEX,8EAA8E;IAC9E,UAAU,IAAA;IAEV,4FAA4F;IAC5F,yBAAyB,IAAA;IAEzB,qFAAqF;IACrF,kBAAkB,IAAA;IAElB,8EAA8E;IAC9E,UAAU,IAAA;IAEV,kFAAkF;IAClF,SAAS,IAAA;IAET,mFAAmF;IACnF,UAAU,IAAA;IAEV,4EAA4E;IAC5E,MAAM,KAAA;IAKN,yEAAyE;IACzE,IAAI,KAAA;IAEJ,gFAAgF;IAChF,IAAI,KAAA;CAIL"}
@@ -25,4 +25,6 @@ ____exports.StatType.FLYING = 10
25
25
  ____exports.StatType[____exports.StatType.FLYING] = "FLYING"
26
26
  ____exports.StatType.LUCK = 11
27
27
  ____exports.StatType[____exports.StatType.LUCK] = "LUCK"
28
+ ____exports.StatType.SIZE = 12
29
+ ____exports.StatType[____exports.StatType.SIZE] = "SIZE"
28
30
  return ____exports
@@ -7,18 +7,24 @@ export declare function customGridEntityInit(mod: ModUpgraded): void;
7
7
  * will reappear if the player leaves and re-enters the room. (It will be manually respawned in the
8
8
  * `POST_NEW_ROOM` callback.)
9
9
  *
10
- * This is an IsaacScript feature because the vanilla game does not support any custom grid
11
- * entities. Under the hood, IsaacScript accomplishes this by using decorations with an arbitrary
12
- * non-zero variant to represent custom grid entities.
10
+ * Custom grid entities are built on top of real grid entities. You can use any existing grid entity
11
+ * type as a base. For example, if you want to create a custom rock that would be breakable like a
12
+ * normal rock, then you should specify `GridEntityType.ROCK` as the base grid entity type.
13
13
  *
14
14
  * Once a custom grid entity is spawned, you can take advantage of the custom grid callbacks such as
15
- * `POST_GRID_ENTITY_CUSTOM_UPDATE`.
15
+ * `POST_GRID_ENTITY_CUSTOM_UPDATE`. Note that the "normal" grid entities callbacks will not fire
16
+ * for custom entities. For example, if you had a custom grid entity based on `GridEntityType.ROCK`,
17
+ * and you also had a subscription to the `POST_GRID_ENTITY_UPDATE` callback, the callback would
18
+ * only fire for normal rocks and not the custom entity.
19
+ *
20
+ * Custom grid entities are an IsaacScript feature because the vanilla game does not support any
21
+ * custom grid entities.
16
22
  *
17
23
  * @param gridEntityTypeCustom An integer that identifies what kind of grid entity you are creating.
18
- * It should correspond to a local enum value in your mod. The integer
19
- * can be any unique value and will not correspond to the actual grid
20
- * entity type used. (This integer is used in the various custom grid
21
- * entity callbacks.)
24
+ * It should correspond to a local enum value created in your mod. The
25
+ * integer can be any unique value and will not correspond to the actual
26
+ * grid entity type used. (This integer is used in the various custom
27
+ * grid entity callbacks.)
22
28
  * @param gridIndexOrPosition The grid index or position in the room that you want to spawn the grid
23
29
  * entity at. If a position is specified, the closest grid index will be
24
30
  * used.
@@ -27,12 +33,12 @@ export declare function customGridEntityInit(mod: ModUpgraded): void;
27
33
  * @param defaultAnimation Optional. The name of the animation to play after the sprite is
28
34
  * initialized and after the player re-enters a room with this grid entity
29
35
  * in it. If not specified, the default animation in the anm2 will be used.
30
- * @param breakable Optional. Whether or not an explosion will be able to break this grid entity.
31
- * False by default. Use the `POST_GRID_ENTITY_CUSTOM_BROKEN` callback to detect
32
- * when it breaks. Due to technical limitations, you can only set the grid entity
33
- * to be breakable if it has a collision class.
36
+ * @param baseGridEntityType Optional. The type of the grid entity to use as a "base" for this
37
+ * custom grid entity. Default is `GridEntityType.DECORATION`.
38
+ * @param baseGridEntityVariant Optional. The variant of the grid entity to use as a "base" for this
39
+ * custom grid entity. Default is 0.
34
40
  */
35
- export declare function spawnCustomGridEntity(gridEntityTypeCustom: GridEntityType, gridIndexOrPosition: int | Vector, gridCollisionClass: GridCollisionClass, anm2Path: string, defaultAnimation?: string, breakable?: boolean): GridEntity;
41
+ export declare function spawnCustomGridEntity(gridEntityTypeCustom: GridEntityType, gridIndexOrPosition: int | Vector, gridCollisionClass: GridCollisionClass, anm2Path: string, defaultAnimation?: string, baseGridEntityType?: GridEntityType, baseGridEntityVariant?: number): GridEntity;
36
42
  /**
37
43
  * Helper function to remove a custom grid entity created by the `spawnCustomGrid` function.
38
44
  *
@@ -57,4 +63,15 @@ export declare function getCustomGridEntities(): Array<[
57
63
  gridEntity: GridEntity,
58
64
  data: GridEntityCustomData
59
65
  ]>;
66
+ /**
67
+ * Helper function to get the custom `GridEntityType` from a `GridEntity` or grid index. Returns
68
+ * undefined if the provided `GridEntity` is not a custom grid entity, or if there was not a grid
69
+ * entity on the provided grid index.
70
+ */
71
+ export declare function getCustomGridEntityType(gridEntityOrGridIndex: GridEntity | int): GridEntityType | undefined;
72
+ /**
73
+ * Helper function to check if a `GridEntity` is a custom grid entity or if a grid index has a
74
+ * custom grid entity.
75
+ */
76
+ export declare function isCustomGridEntity(gridEntityOrGridIndex: GridEntity | int): boolean;
60
77
  //# sourceMappingURL=customGridEntity.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"customGridEntity.d.ts","sourceRoot":"","sources":["../../src/features/customGridEntity.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,kBAAkB,EAClB,cAAc,EAGf,MAAM,8BAA8B,CAAC;AAGtC,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAcrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAqB1E,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,WAAW,GAAG,IAAI,CAmB3D;AAkID;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,qBAAqB,CACnC,oBAAoB,EAAE,cAAc,EACpC,mBAAmB,EAAE,GAAG,GAAG,MAAM,EACjC,kBAAkB,EAAE,kBAAkB,EACtC,QAAQ,EAAE,MAAM,EAChB,gBAAgB,CAAC,EAAE,MAAM,EACzB,SAAS,UAAQ,GAChB,UAAU,CAyEZ;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,sBAAsB,CACpC,+BAA+B,EAAE,GAAG,GAAG,MAAM,GAAG,UAAU,EAC1D,UAAU,UAAO,GAChB,UAAU,GAAG,SAAS,CAqCxB;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,IAAI,KAAK,CAC5C;IAAC,UAAU,EAAE,UAAU;IAAE,IAAI,EAAE,oBAAoB;CAAC,CACrD,CAiBA"}
1
+ {"version":3,"file":"customGridEntity.d.ts","sourceRoot":"","sources":["../../src/features/customGridEntity.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,kBAAkB,EAClB,cAAc,EAGf,MAAM,8BAA8B,CAAC;AAGtC,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAerD,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAoB1E,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,WAAW,GAAG,IAAI,CAmB3D;AAkID;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,wBAAgB,qBAAqB,CACnC,oBAAoB,EAAE,cAAc,EACpC,mBAAmB,EAAE,GAAG,GAAG,MAAM,EACjC,kBAAkB,EAAE,kBAAkB,EACtC,QAAQ,EAAE,MAAM,EAChB,gBAAgB,CAAC,EAAE,MAAM,EACzB,kBAAkB,iBAA4B,EAC9C,qBAAqB,SAAI,GACxB,UAAU,CAyCZ;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,sBAAsB,CACpC,+BAA+B,EAAE,GAAG,GAAG,MAAM,GAAG,UAAU,EAC1D,UAAU,UAAO,GAChB,UAAU,GAAG,SAAS,CAuCxB;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,IAAI,KAAK,CAC5C;IAAC,UAAU,EAAE,UAAU;IAAE,IAAI,EAAE,oBAAoB;CAAC,CACrD,CAqBA;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CACrC,qBAAqB,EAAE,UAAU,GAAG,GAAG,GACtC,cAAc,GAAG,SAAS,CAsB5B;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,qBAAqB,EAAE,UAAU,GAAG,GAAG,GACtC,OAAO,CAOT"}
@@ -8,7 +8,6 @@ local entityTakeDmgGenericProp, preUseItemWeNeedToGoDeeper, postNewRoomReordered
8
8
  local ____isaac_2Dtypescript_2Ddefinitions = require("isaac-typescript-definitions")
9
9
  local CollectibleType = ____isaac_2Dtypescript_2Ddefinitions.CollectibleType
10
10
  local DamageFlag = ____isaac_2Dtypescript_2Ddefinitions.DamageFlag
11
- local EntityFlag = ____isaac_2Dtypescript_2Ddefinitions.EntityFlag
12
11
  local EntityType = ____isaac_2Dtypescript_2Ddefinitions.EntityType
13
12
  local GridCollisionClass = ____isaac_2Dtypescript_2Ddefinitions.GridCollisionClass
14
13
  local GridEntityType = ____isaac_2Dtypescript_2Ddefinitions.GridEntityType
@@ -19,14 +18,11 @@ local ____DefaultMap = require("classes.DefaultMap")
19
18
  local DefaultMap = ____DefaultMap.DefaultMap
20
19
  local ____cachedClasses = require("core.cachedClasses")
21
20
  local game = ____cachedClasses.game
22
- local ____DecorationVariant = require("enums.DecorationVariant")
23
- local DecorationVariant = ____DecorationVariant.DecorationVariant
24
21
  local ____ModCallbackCustom = require("enums.ModCallbackCustom")
25
22
  local ModCallbackCustom = ____ModCallbackCustom.ModCallbackCustom
26
23
  local ____featuresInitialized = require("featuresInitialized")
24
+ local areFeaturesInitialized = ____featuresInitialized.areFeaturesInitialized
27
25
  local errorIfFeaturesNotInitialized = ____featuresInitialized.errorIfFeaturesNotInitialized
28
- local ____entities = require("functions.entities")
29
- local spawn = ____entities.spawn
30
26
  local ____flag = require("functions.flag")
31
27
  local hasFlag = ____flag.hasFlag
32
28
  local ____gridEntities = require("functions.gridEntities")
@@ -35,7 +31,7 @@ local spawnGridEntityWithVariant = ____gridEntities.spawnGridEntityWithVariant
35
31
  local ____roomData = require("functions.roomData")
36
32
  local getRoomListIndex = ____roomData.getRoomListIndex
37
33
  local ____types = require("functions.types")
38
- local asNumber = ____types.asNumber
34
+ local isNumber = ____types.isNumber
39
35
  local ____vector = require("functions.vector")
40
36
  local isVector = ____vector.isVector
41
37
  local ____runInNFrames = require("features.runInNFrames")
@@ -128,7 +124,6 @@ function postNewRoomReordered(self)
128
124
  end
129
125
  end
130
126
  local FEATURE_NAME = "customGridEntity"
131
- local GENERIC_PROP_SIZE_MULTIPLIER = 0.66
132
127
  v = {
133
128
  level = {customGridEntities = __TS__New(
134
129
  DefaultMap,
@@ -149,18 +144,24 @@ end
149
144
  -- will reappear if the player leaves and re-enters the room. (It will be manually respawned in the
150
145
  -- `POST_NEW_ROOM` callback.)
151
146
  --
152
- -- This is an IsaacScript feature because the vanilla game does not support any custom grid
153
- -- entities. Under the hood, IsaacScript accomplishes this by using decorations with an arbitrary
154
- -- non-zero variant to represent custom grid entities.
147
+ -- Custom grid entities are built on top of real grid entities. You can use any existing grid entity
148
+ -- type as a base. For example, if you want to create a custom rock that would be breakable like a
149
+ -- normal rock, then you should specify `GridEntityType.ROCK` as the base grid entity type.
155
150
  --
156
151
  -- Once a custom grid entity is spawned, you can take advantage of the custom grid callbacks such as
157
- -- `POST_GRID_ENTITY_CUSTOM_UPDATE`.
152
+ -- `POST_GRID_ENTITY_CUSTOM_UPDATE`. Note that the "normal" grid entities callbacks will not fire
153
+ -- for custom entities. For example, if you had a custom grid entity based on `GridEntityType.ROCK`,
154
+ -- and you also had a subscription to the `POST_GRID_ENTITY_UPDATE` callback, the callback would
155
+ -- only fire for normal rocks and not the custom entity.
156
+ --
157
+ -- Custom grid entities are an IsaacScript feature because the vanilla game does not support any
158
+ -- custom grid entities.
158
159
  --
159
160
  -- @param gridEntityTypeCustom An integer that identifies what kind of grid entity you are creating.
160
- -- It should correspond to a local enum value in your mod. The integer
161
- -- can be any unique value and will not correspond to the actual grid
162
- -- entity type used. (This integer is used in the various custom grid
163
- -- entity callbacks.)
161
+ -- It should correspond to a local enum value created in your mod. The
162
+ -- integer can be any unique value and will not correspond to the actual
163
+ -- grid entity type used. (This integer is used in the various custom
164
+ -- grid entity callbacks.)
164
165
  -- @param gridIndexOrPosition The grid index or position in the room that you want to spawn the grid
165
166
  -- entity at. If a position is specified, the closest grid index will be
166
167
  -- used.
@@ -169,29 +170,27 @@ end
169
170
  -- @param defaultAnimation Optional. The name of the animation to play after the sprite is
170
171
  -- initialized and after the player re-enters a room with this grid entity
171
172
  -- in it. If not specified, the default animation in the anm2 will be used.
172
- -- @param breakable Optional. Whether or not an explosion will be able to break this grid entity.
173
- -- False by default. Use the `POST_GRID_ENTITY_CUSTOM_BROKEN` callback to detect
174
- -- when it breaks. Due to technical limitations, you can only set the grid entity
175
- -- to be breakable if it has a collision class.
176
- function ____exports.spawnCustomGridEntity(self, gridEntityTypeCustom, gridIndexOrPosition, gridCollisionClass, anm2Path, defaultAnimation, breakable)
177
- if breakable == nil then
178
- breakable = false
173
+ -- @param baseGridEntityType Optional. The type of the grid entity to use as a "base" for this
174
+ -- custom grid entity. Default is `GridEntityType.DECORATION`.
175
+ -- @param baseGridEntityVariant Optional. The variant of the grid entity to use as a "base" for this
176
+ -- custom grid entity. Default is 0.
177
+ function ____exports.spawnCustomGridEntity(self, gridEntityTypeCustom, gridIndexOrPosition, gridCollisionClass, anm2Path, defaultAnimation, baseGridEntityType, baseGridEntityVariant)
178
+ if baseGridEntityType == nil then
179
+ baseGridEntityType = GridEntityType.DECORATION
179
180
  end
180
- errorIfFeaturesNotInitialized(nil, FEATURE_NAME)
181
- if breakable and gridCollisionClass == GridCollisionClass.NONE then
182
- error("Failed to spawn a custom grid entity because it is not possible to have breakable custom grid entities with a collision class of: GridCollisionClass.NONE (0)")
181
+ if baseGridEntityVariant == nil then
182
+ baseGridEntityVariant = 0
183
183
  end
184
+ errorIfFeaturesNotInitialized(nil, FEATURE_NAME)
184
185
  local room = game:GetRoom()
185
186
  local roomListIndex = getRoomListIndex(nil)
186
187
  local gridIndex = isVector(nil, gridIndexOrPosition) and room:GetGridIndex(gridIndexOrPosition) or gridIndexOrPosition
187
- local existingGridEntity = room:GetGridEntity(gridIndex)
188
- local isExistingDecoration = existingGridEntity ~= nil and existingGridEntity:GetType() == GridEntityType.DECORATION and existingGridEntity:GetVariant() == asNumber(nil, DecorationVariant.CUSTOM_GRID_ENTITY)
189
- local decoration = isExistingDecoration and existingGridEntity or spawnGridEntityWithVariant(nil, GridEntityType.DECORATION, DecorationVariant.CUSTOM_GRID_ENTITY, gridIndexOrPosition)
190
- if decoration == nil then
191
- error("Failed to spawn a decoration for a custom grid entity.")
188
+ local customGridEntity = spawnGridEntityWithVariant(nil, baseGridEntityType, baseGridEntityVariant, gridIndexOrPosition)
189
+ if customGridEntity == nil then
190
+ error("Failed to spawn a custom grid entity.")
192
191
  end
193
- decoration.CollisionClass = gridCollisionClass
194
- local sprite = decoration:GetSprite()
192
+ customGridEntity.CollisionClass = gridCollisionClass
193
+ local sprite = customGridEntity:GetSprite()
195
194
  sprite:Load(anm2Path, true)
196
195
  local animationToPlay = defaultAnimation == nil and sprite:GetDefaultAnimation() or defaultAnimation
197
196
  sprite:Play(animationToPlay, true)
@@ -205,22 +204,7 @@ function ____exports.spawnCustomGridEntity(self, gridEntityTypeCustom, gridIndex
205
204
  }
206
205
  local roomCustomGridEntities = v.level.customGridEntities:getAndSetDefault(roomListIndex)
207
206
  roomCustomGridEntities:set(gridIndex, customGridEntityData)
208
- if breakable then
209
- local position = room:GetGridPosition(gridIndex)
210
- local entity = spawn(
211
- nil,
212
- EntityType.GENERIC_PROP,
213
- 0,
214
- 0,
215
- position
216
- )
217
- entity:ClearEntityFlags(EntityFlag.APPEAR)
218
- entity.Visible = false
219
- entity.SizeMulti = Vector(GENERIC_PROP_SIZE_MULTIPLIER, GENERIC_PROP_SIZE_MULTIPLIER)
220
- local ptrHash = GetPtrHash(entity)
221
- v.room.genericPropPtrHashes:add(ptrHash)
222
- end
223
- return decoration
207
+ return customGridEntity
224
208
  end
225
209
  --- Helper function to remove a custom grid entity created by the `spawnCustomGrid` function.
226
210
  --
@@ -239,6 +223,7 @@ function ____exports.removeCustomGridEntity(self, gridIndexOrPositionOrGridEntit
239
223
  if updateRoom == nil then
240
224
  updateRoom = true
241
225
  end
226
+ errorIfFeaturesNotInitialized(nil, FEATURE_NAME)
242
227
  local room = game:GetRoom()
243
228
  local roomListIndex = getRoomListIndex(nil)
244
229
  local decoration
@@ -272,6 +257,9 @@ end
272
257
  --- Helper function to get the custom grid entities in the current room. Returns an array of tuples
273
258
  -- containing the raw decoration grid entity and the associated entity data.
274
259
  function ____exports.getCustomGridEntities(self)
260
+ if not areFeaturesInitialized(nil) then
261
+ return {}
262
+ end
275
263
  local roomListIndex = getRoomListIndex(nil)
276
264
  local roomCustomGridEntities = v.level.customGridEntities:get(roomListIndex)
277
265
  if roomCustomGridEntities == nil then
@@ -289,4 +277,35 @@ function ____exports.getCustomGridEntities(self)
289
277
  end
290
278
  return customGridEntities
291
279
  end
280
+ --- Helper function to get the custom `GridEntityType` from a `GridEntity` or grid index. Returns
281
+ -- undefined if the provided `GridEntity` is not a custom grid entity, or if there was not a grid
282
+ -- entity on the provided grid index.
283
+ function ____exports.getCustomGridEntityType(self, gridEntityOrGridIndex)
284
+ if not areFeaturesInitialized(nil) then
285
+ return nil
286
+ end
287
+ local gridIndex = isNumber(nil, gridEntityOrGridIndex) and gridEntityOrGridIndex or gridEntityOrGridIndex:GetGridIndex()
288
+ local roomListIndex = getRoomListIndex(nil)
289
+ local roomCustomGridEntities = v.level.customGridEntities:get(roomListIndex)
290
+ if roomCustomGridEntities == nil then
291
+ return nil
292
+ end
293
+ for ____, ____value in __TS__Iterator(roomCustomGridEntities:entries()) do
294
+ local _gridIndex = ____value[1]
295
+ local data = ____value[2]
296
+ if data.gridIndex == gridIndex then
297
+ return data.gridEntityTypeCustom
298
+ end
299
+ end
300
+ return nil
301
+ end
302
+ --- Helper function to check if a `GridEntity` is a custom grid entity or if a grid index has a
303
+ -- custom grid entity.
304
+ function ____exports.isCustomGridEntity(self, gridEntityOrGridIndex)
305
+ if not areFeaturesInitialized(nil) then
306
+ return false
307
+ end
308
+ local gridEntityTypeCustom = ____exports.getCustomGridEntityType(nil, gridEntityOrGridIndex)
309
+ return gridEntityTypeCustom ~= nil
310
+ end
292
311
  return ____exports
@@ -1 +1 @@
1
- {"version":3,"file":"customStageGridEntities.d.ts","sourceRoot":"","sources":["../../../src/features/customStage/customStageGridEntities.ts"],"names":[],"mappings":";AAmBA,OAAO,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AAMnE,0CAA0C;AAC1C,wBAAgB,2BAA2B,CACzC,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,UAAU,GACrB,IAAI,CAyBN;AAED,oCAAoC;AACpC,wBAAgB,qBAAqB,CACnC,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,UAAU,GACrB,IAAI,CAqBN;AAED,mCAAmC;AACnC,wBAAgB,oBAAoB,CAClC,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,UAAU,GACrB,IAAI,CAkBN;AAED,mCAAmC;AACnC,wBAAgB,qBAAqB,CACnC,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,UAAU,GACrB,IAAI,CAmBN;AAuDD,wBAAgB,uBAAuB,CACrC,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,UAAU,GACrB,IAAI,CAsBN;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,UAAU,GACrB,IAAI,CAsBN"}
1
+ {"version":3,"file":"customStageGridEntities.d.ts","sourceRoot":"","sources":["../../../src/features/customStage/customStageGridEntities.ts"],"names":[],"mappings":";AAiBA,OAAO,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AASnE,0CAA0C;AAC1C,wBAAgB,2BAA2B,CACzC,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,UAAU,GACrB,IAAI,CAuBN;AAED,oCAAoC;AACpC,wBAAgB,qBAAqB,CACnC,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,UAAU,GACrB,IAAI,CAyBN;AAED,mCAAmC;AACnC,wBAAgB,oBAAoB,CAClC,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,UAAU,GACrB,IAAI,CAsBN;AAED,mCAAmC;AACnC,wBAAgB,qBAAqB,CACnC,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,UAAU,GACrB,IAAI,CAuBN;AAuDD,wBAAgB,uBAAuB,CACrC,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,UAAU,GACrB,IAAI,CAwBN;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,UAAU,GACrB,IAAI,CAsBN"}