isaacscript-common 15.2.0 → 15.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (29) hide show
  1. package/dist/index.d.ts +66 -44
  2. package/dist/isaacscript-common.lua +110 -59
  3. package/dist/src/classes/ModFeature.d.ts +12 -1
  4. package/dist/src/classes/ModFeature.d.ts.map +1 -1
  5. package/dist/src/classes/ModFeature.lua +112 -55
  6. package/dist/src/classes/callbacks/PostNPCInitFilter.d.ts +0 -5
  7. package/dist/src/classes/callbacks/PostNPCInitFilter.d.ts.map +1 -1
  8. package/dist/src/classes/callbacks/PostNPCInitFilter.lua +0 -3
  9. package/dist/src/classes/callbacks/PostNPCUpdateFilter.d.ts +0 -5
  10. package/dist/src/classes/callbacks/PostNPCUpdateFilter.d.ts.map +1 -1
  11. package/dist/src/classes/callbacks/PostNPCUpdateFilter.lua +0 -3
  12. package/dist/src/classes/features/callbackLogic/GameReorderedCallbacks.d.ts +21 -13
  13. package/dist/src/classes/features/callbackLogic/GameReorderedCallbacks.d.ts.map +1 -1
  14. package/dist/src/classes/features/callbackLogic/GameReorderedCallbacks.lua +7 -1
  15. package/dist/src/classes/features/other/CustomPickups.d.ts.map +1 -1
  16. package/dist/src/classes/features/other/DebugDisplay.lua +1 -1
  17. package/dist/src/enums/ModCallbackCustom.d.ts +33 -30
  18. package/dist/src/enums/ModCallbackCustom.d.ts.map +1 -1
  19. package/package.json +1 -1
  20. package/src/classes/ModFeature.ts +132 -75
  21. package/src/classes/callbacks/PostNPCInitFilter.ts +0 -6
  22. package/src/classes/callbacks/PostNPCUpdateFilter.ts +0 -6
  23. package/src/classes/features/callbackLogic/GameReorderedCallbacks.ts +21 -13
  24. package/src/classes/features/other/CustomPickups.ts +0 -4
  25. package/src/classes/features/other/DebugDisplay.ts +1 -1
  26. package/src/enums/ModCallbackCustom.ts +33 -30
  27. package/dist/src/indexLua.d.ts +0 -171
  28. package/dist/src/indexLua.d.ts.map +0 -1
  29. package/dist/src/indexLua.lua +0 -1042
@@ -1,69 +1,81 @@
1
1
  local ____lualib = require("lualib_bundle")
2
2
  local __TS__Class = ____lualib.__TS__Class
3
+ local Map = ____lualib.Map
3
4
  local ____exports = {}
4
- local checkAddDecoratedCallbacks, checkAddDecoratedCallbacksCustom, checkRegisterSaveDataManager
5
+ local initDecoratedCallbacks, initSaveDataManager, WRAPPED_CALLBACK_METHODS_KEY, WRAPPED_CUSTOM_CALLBACK_METHODS_KEY
6
+ local ____array = require("src.functions.array")
7
+ local isArray = ____array.isArray
8
+ local ____deepCopy = require("src.functions.deepCopy")
9
+ local deepCopy = ____deepCopy.deepCopy
5
10
  local ____tstlClass = require("src.functions.tstlClass")
6
11
  local getTSTLClassConstructor = ____tstlClass.getTSTLClassConstructor
7
12
  local getTSTLClassName = ____tstlClass.getTSTLClassName
8
13
  local ____types = require("src.functions.types")
9
14
  local isTable = ____types.isTable
10
- function checkAddDecoratedCallbacks(self, mod, modFeatureConstructor, modFeature)
11
- local addCallbackArgs = modFeatureConstructor[____exports.ADD_CALLBACK_ARGS_KEY]
15
+ function initDecoratedCallbacks(self, modFeature, constructor, tstlClassName, vanilla, init)
16
+ local modFeatureConstructor = constructor
17
+ local argsKey = vanilla and ____exports.ADD_CALLBACK_ARGS_KEY or ____exports.ADD_CALLBACK_CUSTOM_ARGS_KEY
18
+ local addCallbackArgs = modFeatureConstructor[argsKey]
12
19
  if addCallbackArgs == nil then
13
20
  return
14
21
  end
15
- local tstlClassName = getTSTLClassName(nil, modFeatureConstructor) or "Unknown"
22
+ if not isArray(nil, addCallbackArgs) then
23
+ error(("Failed to initialize/uninitialize the decorated callbacks on a mod feature since the callback arguments on the key of \"" .. argsKey) .. "\" was not an array.")
24
+ end
16
25
  for ____, args in ipairs(addCallbackArgs) do
17
- local parameters = args
26
+ if not isArray(nil, args) then
27
+ error("Failed to initialize/uninitialize the decorated callbacks on a mod feature since one of the callback arguments was not an array.")
28
+ end
29
+ local parameters = deepCopy(nil, args)
18
30
  local modCallback = table.remove(parameters, 1)
19
31
  if modCallback == nil then
20
- error("Failed to get the ModCallback from the parameters for class: " .. tstlClassName)
21
- end
22
- local callback = table.remove(parameters, 1)
23
- if callback == nil then
24
- error("Failed to get the callback from the parameters for class: " .. tstlClassName)
25
- end
26
- --- We need to wrap the callback in a new function so that we can explicitly pass the class as
27
- -- the first argument. (Otherwise, the method will not be able to properly access `this`.
28
- local function newCallback(____, ...)
29
- callback(modFeature, ...)
30
- end
31
- mod:AddCallback(
32
- modCallback,
33
- newCallback,
34
- table.unpack(parameters)
35
- )
36
- end
37
- end
38
- function checkAddDecoratedCallbacksCustom(self, mod, modFeatureConstructor, modFeature)
39
- local addCallbackCustomArgs = modFeatureConstructor[____exports.ADD_CALLBACK_CUSTOM_ARGS_KEY]
40
- if addCallbackCustomArgs == nil then
41
- return
42
- end
43
- local tstlClassName = getTSTLClassName(nil, modFeatureConstructor) or "Unknown"
44
- for ____, args in ipairs(addCallbackCustomArgs) do
45
- local parameters = args
46
- local modCallbackCustom = table.remove(parameters, 1)
47
- if modCallbackCustom == nil then
48
- error("Failed to get the ModCallbackCustom from the parameters for class: " .. tstlClassName)
32
+ error("Failed to get the callback number from the parameters for class: " .. tstlClassName)
49
33
  end
50
34
  local callback = table.remove(parameters, 1)
51
35
  if callback == nil then
52
- error("Failed to get the callback from the parameters for class: " .. tstlClassName)
36
+ error("Failed to get the callback function from the parameters for class: " .. tstlClassName)
53
37
  end
54
- --- We need to wrap the callback in a new function so that we can explicitly pass the class as
55
- -- the first argument. (Otherwise, the method will not be able to properly access `this`.
56
- local function newCallback(____, ...)
57
- callback(modFeature, ...)
38
+ local mod = modFeature.mod
39
+ if init then
40
+ local function wrappedCallback(____, ...)
41
+ callback(modFeature, ...)
42
+ end
43
+ if vanilla then
44
+ local modCallbackVanilla = modCallback
45
+ local wrappedMethodsMap = modFeatureConstructor[WRAPPED_CALLBACK_METHODS_KEY]
46
+ wrappedMethodsMap:set(modCallbackVanilla, wrappedCallback)
47
+ else
48
+ local modCallbackCustom = modCallback
49
+ local wrappedMethodsMap = modFeatureConstructor[WRAPPED_CUSTOM_CALLBACK_METHODS_KEY]
50
+ wrappedMethodsMap:set(modCallbackCustom, wrappedCallback)
51
+ end
52
+ if vanilla then
53
+ mod:AddCallback(
54
+ modCallback,
55
+ wrappedCallback,
56
+ table.unpack(parameters)
57
+ )
58
+ else
59
+ mod:AddCallbackCustom(
60
+ modCallback,
61
+ wrappedCallback,
62
+ table.unpack(parameters)
63
+ )
64
+ end
65
+ elseif vanilla then
66
+ local modCallbackVanilla = modCallback
67
+ local wrappedMethodsMap = modFeatureConstructor[WRAPPED_CALLBACK_METHODS_KEY]
68
+ local wrappedCallback = wrappedMethodsMap:get(modCallbackVanilla)
69
+ mod:RemoveCallback(modCallback, wrappedCallback)
70
+ else
71
+ local modCallbackCustom = modCallback
72
+ local wrappedMethodsMap = modFeatureConstructor[WRAPPED_CUSTOM_CALLBACK_METHODS_KEY]
73
+ local wrappedCallback = wrappedMethodsMap:get(modCallbackCustom)
74
+ mod:RemoveCallbackCustom(modCallback, wrappedCallback)
58
75
  end
59
- mod:AddCallbackCustom(
60
- modCallbackCustom,
61
- newCallback,
62
- table.unpack(parameters)
63
- )
64
76
  end
65
77
  end
66
- function checkRegisterSaveDataManager(self, mod, modFeature)
78
+ function initSaveDataManager(self, modFeature, tstlClassName, init)
67
79
  local ____modFeature_0 = modFeature
68
80
  local v = ____modFeature_0.v
69
81
  if v == nil then
@@ -72,16 +84,25 @@ function checkRegisterSaveDataManager(self, mod, modFeature)
72
84
  if not isTable(nil, v) then
73
85
  error("Failed to initialize a mod feature class due to having a \"v\" property that is not an object. (The \"v\" property is supposed to be an object that holds the variables for the class, managed by the save data manager.)")
74
86
  end
75
- local ____mod_1 = mod
76
- local saveDataManager = ____mod_1.saveDataManager
77
- if saveDataManager == nil then
87
+ local mod = modFeature.mod
88
+ local saveDataManagerMethodName = init and "saveDataManager" or "saveDataManagerRemove"
89
+ local saveDataManagerMethod = mod[saveDataManagerMethodName]
90
+ if saveDataManagerMethod == nil then
78
91
  error("Failed to initialize a mod feature class due to having a \"v\" object and not having the save data manager initialized. You must pass \"ISCFeature.SAVE_DATA_MANAGER\" to the \"upgradeMod\" function.")
79
92
  end
80
- local tstlClassName = getTSTLClassName(nil, modFeature)
81
- saveDataManager(nil, tstlClassName, v)
93
+ if type(saveDataManagerMethod) ~= "function" then
94
+ error(("The \"" .. saveDataManagerMethodName) .. "\" property of the \"ModUpgraded\" object was not a function.")
95
+ end
96
+ if init then
97
+ saveDataManagerMethod(nil, tstlClassName, v)
98
+ else
99
+ saveDataManagerMethod(nil, tstlClassName)
100
+ end
82
101
  end
83
102
  ____exports.ADD_CALLBACK_ARGS_KEY = "__addCallbackArgs"
84
103
  ____exports.ADD_CALLBACK_CUSTOM_ARGS_KEY = "__addCallbackCustomArgs"
104
+ WRAPPED_CALLBACK_METHODS_KEY = "__wrappedCallbackMethods"
105
+ WRAPPED_CUSTOM_CALLBACK_METHODS_KEY = "__wrappedCustomCallbacksMethods"
85
106
  --- Helper class for mods that wants to represent their individual features as classes. Extend your
86
107
  -- mod features from this class in order to enable the `@Callback` and `@CustomCallback` decorators
87
108
  -- that automatically subscribe to callbacks.
@@ -106,17 +127,53 @@ ____exports.ADD_CALLBACK_CUSTOM_ARGS_KEY = "__addCallbackCustomArgs"
106
127
  -- }
107
128
  -- }
108
129
  -- ```
130
+ --
131
+ -- In almost all cases, you will want the callback functions to be immediately subscribed after
132
+ -- instantiating the class. However, if this is not the case, you can pass `false` as the optional
133
+ -- second argument to the constructor.
109
134
  ____exports.ModFeature = __TS__Class()
110
135
  local ModFeature = ____exports.ModFeature
111
136
  ModFeature.name = "ModFeature"
112
- function ModFeature.prototype.____constructor(self, mod)
137
+ function ModFeature.prototype.____constructor(self, mod, init)
138
+ if init == nil then
139
+ init = true
140
+ end
141
+ self.mod = mod
142
+ if init then
143
+ self:init()
144
+ end
145
+ end
146
+ function ModFeature.prototype.init(self, init)
147
+ if init == nil then
148
+ init = true
149
+ end
113
150
  local constructor = getTSTLClassConstructor(nil, self)
114
151
  if constructor == nil then
115
152
  error("Failed to get the TSTL class constructor for a mod feature.")
116
153
  end
117
- local modFeatureConstructor = constructor
118
- checkAddDecoratedCallbacks(nil, mod, modFeatureConstructor, self)
119
- checkAddDecoratedCallbacksCustom(nil, mod, modFeatureConstructor, self)
120
- checkRegisterSaveDataManager(nil, mod, self)
154
+ local tstlClassName = getTSTLClassName(nil, constructor)
155
+ if tstlClassName == nil then
156
+ error("Failed to get the TSTL class name for a mod feature.")
157
+ end
158
+ initDecoratedCallbacks(
159
+ nil,
160
+ self,
161
+ constructor,
162
+ tstlClassName,
163
+ true,
164
+ init
165
+ )
166
+ initDecoratedCallbacks(
167
+ nil,
168
+ self,
169
+ constructor,
170
+ tstlClassName,
171
+ false,
172
+ init
173
+ )
174
+ initSaveDataManager(nil, self, tstlClassName, init)
175
+ end
176
+ function ModFeature.prototype.uninit(self)
177
+ self:init(false)
121
178
  end
122
179
  return ____exports
@@ -2,11 +2,6 @@ import { ModCallbackCustom } from "../../enums/ModCallbackCustom";
2
2
  import { shouldFireNPC } from "../../shouldFire";
3
3
  import { CustomCallback } from "../private/CustomCallback";
4
4
  export declare class PostNPCInitFilter extends CustomCallback<ModCallbackCustom.POST_NPC_INIT_FILTER> {
5
- v: {
6
- room: {
7
- firedSet: Set<PtrHash>;
8
- };
9
- };
10
5
  constructor();
11
6
  protected shouldFire: typeof shouldFireNPC;
12
7
  private postNPCInit;
@@ -1 +1 @@
1
- {"version":3,"file":"PostNPCInitFilter.d.ts","sourceRoot":"","sources":["../../../../src/classes/callbacks/PostNPCInitFilter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAE3D,qBAAa,iBAAkB,SAAQ,cAAc,CAAC,iBAAiB,CAAC,oBAAoB,CAAC;IAC3E,CAAC;;;;MAIf;;IAUF,UAAmB,UAAU,uBAAiB;IAG9C,OAAO,CAAC,WAAW,CAEjB;CACH"}
1
+ {"version":3,"file":"PostNPCInitFilter.d.ts","sourceRoot":"","sources":["../../../../src/classes/callbacks/PostNPCInitFilter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAE3D,qBAAa,iBAAkB,SAAQ,cAAc,CAAC,iBAAiB,CAAC,oBAAoB,CAAC;;IAS3F,UAAmB,UAAU,uBAAiB;IAG9C,OAAO,CAAC,WAAW,CAEjB;CACH"}
@@ -1,8 +1,6 @@
1
1
  local ____lualib = require("lualib_bundle")
2
2
  local __TS__Class = ____lualib.__TS__Class
3
3
  local __TS__ClassExtends = ____lualib.__TS__ClassExtends
4
- local Set = ____lualib.Set
5
- local __TS__New = ____lualib.__TS__New
6
4
  local ____exports = {}
7
5
  local ____isaac_2Dtypescript_2Ddefinitions = require("isaac-typescript-definitions")
8
6
  local ModCallback = ____isaac_2Dtypescript_2Ddefinitions.ModCallback
@@ -16,7 +14,6 @@ PostNPCInitFilter.name = "PostNPCInitFilter"
16
14
  __TS__ClassExtends(PostNPCInitFilter, CustomCallback)
17
15
  function PostNPCInitFilter.prototype.____constructor(self)
18
16
  CustomCallback.prototype.____constructor(self)
19
- self.v = {room = {firedSet = __TS__New(Set)}}
20
17
  self.shouldFire = shouldFireNPC
21
18
  self.postNPCInit = function(____, npc)
22
19
  self:fire(npc)
@@ -2,11 +2,6 @@ import { ModCallbackCustom } from "../../enums/ModCallbackCustom";
2
2
  import { shouldFireNPC } from "../../shouldFire";
3
3
  import { CustomCallback } from "../private/CustomCallback";
4
4
  export declare class PostNPCUpdateFilter extends CustomCallback<ModCallbackCustom.POST_NPC_UPDATE_FILTER> {
5
- v: {
6
- room: {
7
- firedSet: Set<PtrHash>;
8
- };
9
- };
10
5
  constructor();
11
6
  protected shouldFire: typeof shouldFireNPC;
12
7
  private postNPCUpdate;
@@ -1 +1 @@
1
- {"version":3,"file":"PostNPCUpdateFilter.d.ts","sourceRoot":"","sources":["../../../../src/classes/callbacks/PostNPCUpdateFilter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAE3D,qBAAa,mBAAoB,SAAQ,cAAc,CAAC,iBAAiB,CAAC,sBAAsB,CAAC;IAC/E,CAAC;;;;MAIf;;IAUF,UAAmB,UAAU,uBAAiB;IAG9C,OAAO,CAAC,aAAa,CAEnB;CACH"}
1
+ {"version":3,"file":"PostNPCUpdateFilter.d.ts","sourceRoot":"","sources":["../../../../src/classes/callbacks/PostNPCUpdateFilter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAE3D,qBAAa,mBAAoB,SAAQ,cAAc,CAAC,iBAAiB,CAAC,sBAAsB,CAAC;;IAS/F,UAAmB,UAAU,uBAAiB;IAG9C,OAAO,CAAC,aAAa,CAEnB;CACH"}
@@ -1,8 +1,6 @@
1
1
  local ____lualib = require("lualib_bundle")
2
2
  local __TS__Class = ____lualib.__TS__Class
3
3
  local __TS__ClassExtends = ____lualib.__TS__ClassExtends
4
- local Set = ____lualib.Set
5
- local __TS__New = ____lualib.__TS__New
6
4
  local ____exports = {}
7
5
  local ____isaac_2Dtypescript_2Ddefinitions = require("isaac-typescript-definitions")
8
6
  local ModCallback = ____isaac_2Dtypescript_2Ddefinitions.ModCallback
@@ -16,7 +14,6 @@ PostNPCUpdateFilter.name = "PostNPCUpdateFilter"
16
14
  __TS__ClassExtends(PostNPCUpdateFilter, CustomCallback)
17
15
  function PostNPCUpdateFilter.prototype.____constructor(self)
18
16
  CustomCallback.prototype.____constructor(self)
19
- self.v = {room = {firedSet = __TS__New(Set)}}
20
17
  self.shouldFire = shouldFireNPC
21
18
  self.postNPCUpdate = function(____, npc)
22
19
  self:fire(npc)
@@ -7,7 +7,13 @@ import { Feature } from "../../private/Feature";
7
7
  * It is easier to write mod code if the callbacks run in a more logical order:
8
8
  * - `POST_GAME_STARTED` --> `POST_NEW_LEVEL` --> `POST_NEW_ROOM`
9
9
  *
10
- * Manually reorganize the callback execution so that this is the case.
10
+ * `isaacscript-common` provides three new callbacks that change the order to this:
11
+ * - `POST_GAME_STARTED_REORDERED`
12
+ * - `POST_NEW_LEVEL_REORDERED`
13
+ * - `POST_NEW_ROOM_REORDERED`
14
+ *
15
+ * Additionally, there are some helper functions listed below that can deal with some edge cases
16
+ * that you may run into with these callbacks.
11
17
  */
12
18
  export declare class GameReorderedCallbacks extends Feature {
13
19
  private currentStage;
@@ -29,12 +35,13 @@ export declare class GameReorderedCallbacks extends Feature {
29
35
  * the next `POST_NEW_LEVEL`.
30
36
  *
31
37
  * If some specific cases, mods can change the current level during run initialization on the 0th
32
- * frame. However, due to how the callback reordering works, the custom `POST_NEW_LEVEL` callback
33
- * will never fire on the 0th frame. To get around this, call this function before changing levels
34
- * to temporarily force the callback to fire.
38
+ * frame. (For example, if you had a mod that made the player start the run in Caves instead of
39
+ * Basement.) However, due to how the callback reordering works, the `POST_NEW_LEVEL_REORDERED`
40
+ * callback will never fire on the 0th frame. To get around this, call this function before
41
+ * changing levels to temporarily force the callback to fire.
35
42
  *
36
43
  * In order to use this function, you must upgrade your mod with
37
- * `ISCFeature.CUSTOM_GRID_ENTITIES`.
44
+ * `ISCFeature.GAME_REORDERED_CALLBACKS`.
38
45
  */
39
46
  forceNewLevelCallback(): void;
40
47
  /**
@@ -42,23 +49,24 @@ export declare class GameReorderedCallbacks extends Feature {
42
49
  * the next `POST_NEW_ROOM`.
43
50
  *
44
51
  * If some specific cases, mods can change the current room during run initialization on the 0th
45
- * frame. However, due to how the callback reordering works, the custom `POST_NEW_ROOM` callback
46
- * will never fire on the 0th frame. To get around this, call this function before changing rooms
47
- * to temporarily force the callback to fire.
52
+ * frame. (For example, if you had a mod that made the player start the Treasure Room of Basement
53
+ * 1 instead of the normal starting room.) However, due to how the callback reordering works, the
54
+ * `POST_NEW_ROOM_REORDERED` callback will never fire on the 0th frame. To get around this, call
55
+ * this function before changing rooms to temporarily force the callback to fire.
48
56
  *
49
57
  * In order to use this function, you must upgrade your mod with
50
- * `ISCFeature.CUSTOM_GRID_ENTITIES`.
58
+ * `ISCFeature.GAME_REORDERED_CALLBACKS`.
51
59
  */
52
60
  forceNewRoomCallback(): void;
53
61
  /**
54
- * Helper function to manually set the variable that the reordered callback logic uses to track
62
+ * Helper function to manually set the variables that the reordered callback logic uses to track
55
63
  * the current stage and stage type.
56
64
  *
57
- * This is useful because if the stage is changed with the `Game.SetStage` method, the reordered
58
- * callbacks will stop working.
65
+ * This is useful because if the stage is changed with the `Game.SetStage` method (or the
66
+ * `setStage` helper function), the reordered callbacks will stop working.
59
67
  *
60
68
  * In order to use this function, you must upgrade your mod with
61
- * `ISCFeature.CUSTOM_GRID_ENTITIES`.
69
+ * `ISCFeature.GAME_REORDERED_CALLBACKS`.
62
70
  */
63
71
  reorderedCallbacksSetStage(stage: LevelStage, stageType: StageType): void;
64
72
  }
@@ -1 +1 @@
1
- {"version":3,"file":"GameReorderedCallbacks.d.ts","sourceRoot":"","sources":["../../../../../src/classes/features/callbackLogic/GameReorderedCallbacks.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,UAAU,EAEV,SAAS,EACV,MAAM,8BAA8B,CAAC;AAOtC,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAEhD;;;;;;;;GAQG;AACH,qBAAa,sBAAuB,SAAQ,OAAO;IACjD,OAAO,CAAC,YAAY,CAAoB;IACxC,OAAO,CAAC,gBAAgB,CAAoB;IAC5C,OAAO,CAAC,oBAAoB,CAAS;IACrC,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,YAAY,CAAS;IAE7B,OAAO,CAAC,wBAAwB,CAA2B;IAC3D,OAAO,CAAC,qBAAqB,CAAwB;IACrD,OAAO,CAAC,oBAAoB,CAAuB;IACnD,OAAO,CAAC,4BAA4B,CAA+B;IA6BnE,OAAO,CAAC,uBAAuB,CAM7B;IAGF,OAAO,CAAC,eAAe,CAMrB;IAGF,OAAO,CAAC,YAAY,CAYlB;IAGF,OAAO,CAAC,WAAW,CA+BjB;IAEF,OAAO,CAAC,kBAAkB;IAS1B;;;;;;;;;;;OAWG;IAEI,qBAAqB,IAAI,IAAI;IAIpC;;;;;;;;;;;OAWG;IAEI,oBAAoB,IAAI,IAAI;IAInC;;;;;;;;;OASG;IAEI,0BAA0B,CAC/B,KAAK,EAAE,UAAU,EACjB,SAAS,EAAE,SAAS,GACnB,IAAI;CAIR"}
1
+ {"version":3,"file":"GameReorderedCallbacks.d.ts","sourceRoot":"","sources":["../../../../../src/classes/features/callbackLogic/GameReorderedCallbacks.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,UAAU,EAEV,SAAS,EACV,MAAM,8BAA8B,CAAC;AAOtC,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAEhD;;;;;;;;;;;;;;GAcG;AACH,qBAAa,sBAAuB,SAAQ,OAAO;IACjD,OAAO,CAAC,YAAY,CAAoB;IACxC,OAAO,CAAC,gBAAgB,CAAoB;IAC5C,OAAO,CAAC,oBAAoB,CAAS;IACrC,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,YAAY,CAAS;IAE7B,OAAO,CAAC,wBAAwB,CAA2B;IAC3D,OAAO,CAAC,qBAAqB,CAAwB;IACrD,OAAO,CAAC,oBAAoB,CAAuB;IACnD,OAAO,CAAC,4BAA4B,CAA+B;IA6BnE,OAAO,CAAC,uBAAuB,CAM7B;IAGF,OAAO,CAAC,eAAe,CAMrB;IAGF,OAAO,CAAC,YAAY,CAYlB;IAGF,OAAO,CAAC,WAAW,CA+BjB;IAEF,OAAO,CAAC,kBAAkB;IAS1B;;;;;;;;;;;;OAYG;IAEI,qBAAqB,IAAI,IAAI;IAIpC;;;;;;;;;;;;OAYG;IAEI,oBAAoB,IAAI,IAAI;IAInC;;;;;;;;;OASG;IAEI,0BAA0B,CAC/B,KAAK,EAAE,UAAU,EACjB,SAAS,EAAE,SAAS,GACnB,IAAI;CAIR"}
@@ -18,7 +18,13 @@ local Feature = ____Feature.Feature
18
18
  -- It is easier to write mod code if the callbacks run in a more logical order:
19
19
  -- - `POST_GAME_STARTED` --> `POST_NEW_LEVEL` --> `POST_NEW_ROOM`
20
20
  --
21
- -- Manually reorganize the callback execution so that this is the case.
21
+ -- `isaacscript-common` provides three new callbacks that change the order to this:
22
+ -- - `POST_GAME_STARTED_REORDERED`
23
+ -- - `POST_NEW_LEVEL_REORDERED`
24
+ -- - `POST_NEW_ROOM_REORDERED`
25
+ --
26
+ -- Additionally, there are some helper functions listed below that can deal with some edge cases
27
+ -- that you may run into with these callbacks.
22
28
  ____exports.GameReorderedCallbacks = __TS__Class()
23
29
  local GameReorderedCallbacks = ____exports.GameReorderedCallbacks
24
30
  GameReorderedCallbacks.name = "GameReorderedCallbacks"
@@ -1 +1 @@
1
- {"version":3,"file":"CustomPickups.d.ts","sourceRoot":"","sources":["../../../../../src/classes/features/other/CustomPickups.ts"],"names":[],"mappings":"AAIA,OAAO,EAIL,aAAa,EACd,MAAM,8BAA8B,CAAC;AAStC,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAkBhD,qBAAa,aAAc,SAAQ,OAAO;IACxC,4BAA4B;IAC5B,OAAO,CAAC,wBAAwB,CAA4C;IAgB5E,OAAO,CAAC,kBAAkB,CAqCxB;IAKF,OAAO,CAAC,4BAA4B,CASlC;IAEF;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IAEI,oBAAoB,CACzB,mBAAmB,EAAE,aAAa,EAClC,OAAO,EAAE,GAAG,EACZ,WAAW,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,KAAK,IAAI,EACvD,aAAa,GAAE,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,KAAK,OAAoB,GACxE,IAAI;CAYR"}
1
+ {"version":3,"file":"CustomPickups.d.ts","sourceRoot":"","sources":["../../../../../src/classes/features/other/CustomPickups.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,aAAa,EACd,MAAM,8BAA8B,CAAC;AAStC,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAkBhD,qBAAa,aAAc,SAAQ,OAAO;IACxC,4BAA4B;IAC5B,OAAO,CAAC,wBAAwB,CAA4C;IAgB5E,OAAO,CAAC,kBAAkB,CAqCxB;IAKF,OAAO,CAAC,4BAA4B,CASlC;IAEF;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IAEI,oBAAoB,CACzB,mBAAmB,EAAE,aAAa,EAClC,OAAO,EAAE,GAAG,EACZ,WAAW,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,KAAK,IAAI,EACvD,aAAa,GAAE,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,KAAK,OAAoB,GACxE,IAAI;CAYR"}
@@ -132,7 +132,7 @@ function DebugDisplay.prototype.toggleFeature(self, feature, featureName)
132
132
  else
133
133
  self.mod:initFeature(feature)
134
134
  end
135
- printEnabled(nil, self.player.initialized, featureName .. " display")
135
+ printEnabled(nil, feature.initialized, featureName .. " display")
136
136
  end
137
137
  function DebugDisplay.prototype.togglePlayerDisplay(self)
138
138
  self:toggleFeature(self.player, "player")
@@ -508,8 +508,8 @@ export declare enum ModCallbackCustom {
508
508
  /**
509
509
  * Fires when a new grid entity is initialized. Specifically, this is either:
510
510
  *
511
- * - in the `POST_NEW_ROOM` callback (firing every time a room is entered, even if the entity was
512
- * previously there on a previous room entry)
511
+ * - in the `POST_NEW_ROOM_REORDERED` callback (firing every time a room is entered, even if the
512
+ * entity was previously there on a previous room entry)
513
513
  * - in the `POST_UPDATE` callback (if the entity appeared mid-way through the room, like when the
514
514
  * trapdoor appears after defeating It Lives!)
515
515
  *
@@ -609,8 +609,8 @@ export declare enum ModCallbackCustom {
609
609
  */
610
610
  POST_GRID_ENTITY_UPDATE = 36,
611
611
  /**
612
- * Fires from the `POST_PEFFECT_UPDATE` callback when the player loses a Holy Mantle temporary
613
- * collectible effect.
612
+ * Fires from the `POST_PEFFECT_UPDATE_REORDERED` callback when the player loses a Holy Mantle
613
+ * temporary collectible effect.
614
614
  *
615
615
  * This callback is useful because you might want to have code that happens when the player is hit
616
616
  * from an enemy. Normally, you would accomplish this via the `ENTITY_TAKE_DMG` callback, but that
@@ -632,8 +632,8 @@ export declare enum ModCallbackCustom {
632
632
  */
633
633
  POST_HOLY_MANTLE_REMOVED = 37,
634
634
  /**
635
- * Fires from `POST_PEFFECT_UPDATE` callback when the player loses charge on their active
636
- * collectible item, implying that the item was just used.
635
+ * Fires from `POST_PEFFECT_UPDATE_REORDERED` callback when the player loses charge on their
636
+ * active collectible item, implying that the item was just used.
637
637
  *
638
638
  * This callback is useful because the `USE_ITEM` callback does not fire when The Candle, Red
639
639
  * Candle, and Bob's Rotten Brain are discharged.
@@ -655,9 +655,9 @@ export declare enum ModCallbackCustom {
655
655
  */
656
656
  POST_ITEM_DISCHARGE = 38,
657
657
  /**
658
- * Fires from the `POST_PEFFECT_UPDATE` callback when an item is no longer queued (i.e. when the
659
- * animation of the player holding the item above their head is finished and the item is actually
660
- * added to the player's inventory).
658
+ * Fires from the `POST_PEFFECT_UPDATE_REORDERED` callback when an item is no longer queued (i.e.
659
+ * when the animation of the player holding the item above their head is finished and the item is
660
+ * actually added to the player's inventory).
661
661
  *
662
662
  * Note that this callback will only fire once per Forgotten/Soul pair.
663
663
  *
@@ -940,8 +940,9 @@ export declare enum ModCallbackCustom {
940
940
  */
941
941
  POST_PIT_UPDATE = 55,
942
942
  /**
943
- * Fires from the `POST_PEFFECT_UPDATE` callback when a player's health (i.e. hearts) is different
944
- * than what it was on the previous frame. For more information, see the `PlayerHealth` enum.
943
+ * Fires from the `POST_PEFFECT_UPDATE_REORDERED` callback when a player's health (i.e. hearts) is
944
+ * different than what it was on the previous frame. For more information, see the `PlayerHealth`
945
+ * enum.
945
946
  *
946
947
  * When registering the callback with the `ModUpgraded.AddCallbackCustom` method:
947
948
  * - You can provide an optional third argument that will make the callback only fire if it
@@ -961,8 +962,8 @@ export declare enum ModCallbackCustom {
961
962
  */
962
963
  POST_PLAYER_CHANGE_HEALTH = 56,
963
964
  /**
964
- * Fires from the `POST_PEFFECT_UPDATE` callback when one of the player's stats change from what
965
- * they were on the previous frame.
965
+ * Fires from the `POST_PEFFECT_UPDATE_REORDERED` callback when one of the player's stats change
966
+ * from what they were on the previous frame.
966
967
  *
967
968
  * The type of `oldValue` and `newValue` will depend on what kind of stat it is. For example,
968
969
  * `StatType.FLYING` will be a boolean. (You can use the "Types" helper functions to narrow the
@@ -991,7 +992,8 @@ export declare enum ModCallbackCustom {
991
992
  */
992
993
  POST_PLAYER_CHANGE_STAT = 57,
993
994
  /**
994
- * Fires from the `POST_PEFFECT_UPDATE` callback when a player entity changes its player type
995
+ * Fires from the `POST_PEFFECT_UPDATE_REORDERED` callback when a player entity changes its player
996
+ * type
995
997
  * (i.e. character) from what it was on the previous frame. For example, it will fire after using
996
998
  * Clicker, after dying with the Judas' Shadow collectible, etc.
997
999
  *
@@ -1013,9 +1015,9 @@ export declare enum ModCallbackCustom {
1013
1015
  */
1014
1016
  POST_PLAYER_CHANGE_TYPE = 58,
1015
1017
  /**
1016
- * Fires from the `POST_PEFFECT_UPDATE` callback when a player's collectible count is higher than
1017
- * what it was on the previous frame, or when the active items change, or when the build is
1018
- * rerolled.
1018
+ * Fires from the `POST_PEFFECT_UPDATE_REORDERED` callback when a player's collectible count is
1019
+ * higher than what it was on the previous frame, or when the active items change, or when the
1020
+ * build is rerolled.
1019
1021
  *
1020
1022
  * When registering the callback with the `ModUpgraded.AddCallbackCustom` method:
1021
1023
  * - You can provide an optional third argument that will make the callback only fire if the
@@ -1030,9 +1032,9 @@ export declare enum ModCallbackCustom {
1030
1032
  */
1031
1033
  POST_PLAYER_COLLECTIBLE_ADDED = 59,
1032
1034
  /**
1033
- * Fires from the `POST_PEFFECT_UPDATE` callback when a player's collectible count is lower than
1034
- * what it was on the previous frame, or when the active items change, or when the build is
1035
- * rerolled.
1035
+ * Fires from the `POST_PEFFECT_UPDATE_REORDERED` callback when a player's collectible count is
1036
+ * lower than what it was on the previous frame, or when the active items change, or when the
1037
+ * build is rerolled.
1036
1038
  *
1037
1039
  * When registering the callback with the `ModUpgraded.AddCallbackCustom` method:
1038
1040
  * - You can provide an optional third argument that will make the callback only fire if the
@@ -1221,8 +1223,9 @@ export declare enum ModCallbackCustom {
1221
1223
  */
1222
1224
  POST_PROJECTILE_INIT_LATE = 70,
1223
1225
  /**
1224
- * Fires from the `POST_PEFFECT_UPDATE` callback when a player first picks up a new item. The
1225
- * pickup returned in the callback is assumed to be the first pickup that no longer exists.
1226
+ * Fires from the `POST_PEFFECT_UPDATE_REORDERED` callback when a player first picks up a new
1227
+ * item. The pickup returned in the callback is assumed to be the first pickup that no longer
1228
+ * exists.
1226
1229
  *
1227
1230
  * When registering the callback with the `ModUpgraded.AddCallbackCustom` method:
1228
1231
  * - You can provide an optional third argument that will make the callback only fire if it
@@ -1351,8 +1354,8 @@ export declare enum ModCallbackCustom {
1351
1354
  /**
1352
1355
  * Fires when a new slot entity is initialized. Specifically, this is either:
1353
1356
  *
1354
- * - in the `POST_NEW_ROOM` callback (firing every time a room is entered, even if the entity was
1355
- * previously there on a previous room entry)
1357
+ * - in the `POST_NEW_ROOM_REORDERED` callback (firing every time a room is entered, even if the
1358
+ * entity was previously there on a previous room entry)
1356
1359
  * - in the `POST_UPDATE` callback (if the entity appeared mid-way through the room, like when a
1357
1360
  * Wheel of Fortune card is used)
1358
1361
  *
@@ -1479,7 +1482,7 @@ export declare enum ModCallbackCustom {
1479
1482
  */
1480
1483
  POST_TNT_UPDATE = 87,
1481
1484
  /**
1482
- * Fires from the `POST_PEFFECT_UPDATE` callback when a player gains or loses a new
1485
+ * Fires from the `POST_PEFFECT_UPDATE_REORDERED` callback when a player gains or loses a new
1483
1486
  * transformation.
1484
1487
  *
1485
1488
  * Note that this callback will only fire once per Forgotten/Soul pair.
@@ -1513,9 +1516,9 @@ export declare enum ModCallbackCustom {
1513
1516
  */
1514
1517
  POST_TRINKET_BREAK = 89,
1515
1518
  /**
1516
- * Fires from the `POST_PEFFECT_UPDATE` callback on the frame before a Berserk effect ends when
1517
- * the player is predicted to die (e.g. they currently have no health left or they took damage in
1518
- * a "Lost" form).
1519
+ * Fires from the `POST_PEFFECT_UPDATE_REORDERED` callback on the frame before a Berserk effect
1520
+ * ends when the player is predicted to die (e.g. they currently have no health left or they took
1521
+ * damage in a "Lost" form).
1519
1522
  *
1520
1523
  * When registering the callback with the `ModUpgraded.AddCallbackCustom` method:
1521
1524
  * - You can provide an optional third argument that will make the callback only fire if it
@@ -1568,8 +1571,8 @@ export declare enum ModCallbackCustom {
1568
1571
  */
1569
1572
  PRE_GET_PEDESTAL = 92,
1570
1573
  /**
1571
- * Fires from the `POST_PEFFECT_UPDATE` callback when an item becomes queued (i.e. when the player
1572
- * begins to hold the item above their head).
1574
+ * Fires from the `POST_PEFFECT_UPDATE_REORDERED` callback when an item becomes queued (i.e. when
1575
+ * the player begins to hold the item above their head).
1573
1576
  *
1574
1577
  * Note that this callback will only fire once per Forgotten/Soul pair.
1575
1578
  *
@@ -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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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "isaacscript-common",
3
- "version": "15.2.0",
3
+ "version": "15.3.0",
4
4
  "description": "Helper functions and features for IsaacScript mods.",
5
5
  "keywords": [
6
6
  "isaac",