isaacscript-common 81.0.3 → 81.0.5
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.
- package/dist/classes/ModFeature.d.ts +1 -1
- package/dist/classes/ModFeature.d.ts.map +1 -1
- package/dist/classes/features/other/CustomItemPools.d.ts +1 -1
- package/dist/classes/features/other/CustomItemPools.d.ts.map +1 -1
- package/dist/classes/features/other/CustomItemPools.lua +4 -2
- package/dist/classes/features/other/DisableInputs.d.ts +1 -1
- package/dist/classes/features/other/DisableInputs.d.ts.map +1 -1
- package/dist/classes/features/other/ModdedElementSets.d.ts +4 -4
- package/dist/classes/features/other/ModdedElementSets.d.ts.map +1 -1
- package/dist/classes/features/other/ModdedElementSets.lua +7 -2
- package/dist/classes/features/other/SaveDataManager.d.ts +1 -1
- package/dist/classes/features/other/SaveDataManager.d.ts.map +1 -1
- package/dist/functions/array.d.ts +5 -5
- package/dist/functions/array.d.ts.map +1 -1
- package/dist/functions/arrayLua.d.ts +14 -14
- package/dist/functions/arrayLua.d.ts.map +1 -1
- package/dist/functions/arrayLua.lua +7 -7
- package/dist/functions/benchmark.d.ts +1 -1
- package/dist/functions/benchmark.d.ts.map +1 -1
- package/dist/functions/bitwise.d.ts +1 -1
- package/dist/functions/bitwise.d.ts.map +1 -1
- package/dist/functions/cards.d.ts +1 -1
- package/dist/functions/cards.d.ts.map +1 -1
- package/dist/functions/challenges.d.ts +1 -1
- package/dist/functions/challenges.d.ts.map +1 -1
- package/dist/functions/curses.d.ts +1 -1
- package/dist/functions/curses.d.ts.map +1 -1
- package/dist/functions/doors.d.ts +5 -5
- package/dist/functions/doors.d.ts.map +1 -1
- package/dist/functions/external.d.ts +1 -1
- package/dist/functions/external.d.ts.map +1 -1
- package/dist/functions/flag.d.ts +5 -4
- package/dist/functions/flag.d.ts.map +1 -1
- package/dist/functions/gridEntities.d.ts +5 -5
- package/dist/functions/gridEntities.d.ts.map +1 -1
- package/dist/functions/input.d.ts +5 -5
- package/dist/functions/input.d.ts.map +1 -1
- package/dist/functions/itemPool.d.ts +2 -2
- package/dist/functions/itemPool.d.ts.map +1 -1
- package/dist/functions/jsonRoom.d.ts +1 -1
- package/dist/functions/jsonRoom.d.ts.map +1 -1
- package/dist/functions/level.d.ts +2 -2
- package/dist/functions/level.d.ts.map +1 -1
- package/dist/functions/levelGrid.d.ts +2 -2
- package/dist/functions/levelGrid.d.ts.map +1 -1
- package/dist/functions/logEntities.d.ts +3 -3
- package/dist/functions/logEntities.d.ts.map +1 -1
- package/dist/functions/logMisc.d.ts +2 -1
- package/dist/functions/logMisc.d.ts.map +1 -1
- package/dist/functions/map.d.ts.map +1 -1
- package/dist/functions/merge.d.ts +1 -1
- package/dist/functions/merge.d.ts.map +1 -1
- package/dist/functions/minimap.d.ts +1 -1
- package/dist/functions/minimap.d.ts.map +1 -1
- package/dist/functions/npcDataStructures.d.ts +3 -3
- package/dist/functions/npcDataStructures.d.ts.map +1 -1
- package/dist/functions/playerCollectibles.d.ts +7 -7
- package/dist/functions/playerCollectibles.d.ts.map +1 -1
- package/dist/functions/playerDataStructures.d.ts +3 -3
- package/dist/functions/playerDataStructures.d.ts.map +1 -1
- package/dist/functions/playerTrinkets.d.ts +2 -2
- package/dist/functions/playerTrinkets.d.ts.map +1 -1
- package/dist/functions/players.d.ts +4 -4
- package/dist/functions/players.d.ts.map +1 -1
- package/dist/functions/rng.d.ts +3 -2
- package/dist/functions/rng.d.ts.map +1 -1
- package/dist/functions/rooms.d.ts +4 -4
- package/dist/functions/rooms.d.ts.map +1 -1
- package/dist/functions/run.d.ts +2 -2
- package/dist/functions/run.d.ts.map +1 -1
- package/dist/functions/set.d.ts.map +1 -1
- package/dist/functions/sort.d.ts +1 -1
- package/dist/functions/sort.d.ts.map +1 -1
- package/dist/functions/stage.d.ts +3 -3
- package/dist/functions/stage.d.ts.map +1 -1
- package/dist/functions/string.d.ts +3 -2
- package/dist/functions/string.d.ts.map +1 -1
- package/dist/functions/table.d.ts +4 -4
- package/dist/functions/table.d.ts.map +1 -1
- package/dist/functions/trinketGive.d.ts +1 -1
- package/dist/functions/trinketGive.d.ts.map +1 -1
- package/dist/functions/utils.d.ts +1 -1
- package/dist/functions/utils.d.ts.map +1 -1
- package/dist/functions/vector.d.ts +1 -1
- package/dist/functions/vector.d.ts.map +1 -1
- package/dist/functions/weighted.d.ts +2 -2
- package/dist/functions/weighted.d.ts.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.rollup.d.ts +110 -108
- package/dist/indexLua.d.ts +1 -0
- package/dist/indexLua.d.ts.map +1 -1
- package/dist/isaacscript-common.lua +23 -12
- package/dist/types/AnyFunction.d.ts +1 -1
- package/dist/types/AnyFunction.d.ts.map +1 -1
- package/dist/types/ReadonlyRecord.d.ts +2 -0
- package/dist/types/ReadonlyRecord.d.ts.map +1 -0
- package/dist/types/ReadonlyRecord.lua +2 -0
- package/package.json +1 -1
- package/src/classes/ModFeature.ts +4 -4
- package/src/classes/ModUpgraded.ts +1 -1
- package/src/classes/features/callbackLogic/PlayerReorderedCallbacks.ts +1 -0
- package/src/classes/features/other/CustomItemPools.ts +10 -3
- package/src/classes/features/other/DisableInputs.ts +4 -1
- package/src/classes/features/other/ItemPoolDetection.ts +2 -2
- package/src/classes/features/other/ModdedElementSets.ts +6 -6
- package/src/classes/features/other/PickupIndexCreation.ts +1 -1
- package/src/classes/features/other/RunInNFrames.ts +2 -0
- package/src/classes/features/other/SaveDataManager.ts +3 -1
- package/src/core/upgradeMod.ts +4 -1
- package/src/functions/array.ts +18 -5
- package/src/functions/arrayLua.ts +20 -20
- package/src/functions/benchmark.ts +1 -1
- package/src/functions/bitwise.ts +1 -1
- package/src/functions/cards.ts +1 -1
- package/src/functions/challenges.ts +1 -1
- package/src/functions/curses.ts +1 -1
- package/src/functions/deepCopy.ts +6 -6
- package/src/functions/doors.ts +7 -5
- package/src/functions/external.ts +1 -1
- package/src/functions/flag.ts +5 -4
- package/src/functions/gridEntities.ts +5 -5
- package/src/functions/input.ts +5 -5
- package/src/functions/itemPool.ts +4 -2
- package/src/functions/jsonRoom.ts +1 -1
- package/src/functions/level.ts +2 -2
- package/src/functions/levelGrid.ts +2 -2
- package/src/functions/logEntities.ts +6 -3
- package/src/functions/logMisc.ts +2 -1
- package/src/functions/map.ts +2 -0
- package/src/functions/merge.ts +4 -3
- package/src/functions/minimap.ts +1 -1
- package/src/functions/npcDataStructures.ts +11 -3
- package/src/functions/playerCollectibles.ts +7 -7
- package/src/functions/playerDataStructures.ts +8 -3
- package/src/functions/playerTrinkets.ts +2 -2
- package/src/functions/players.ts +6 -4
- package/src/functions/rng.ts +8 -2
- package/src/functions/rooms.ts +4 -4
- package/src/functions/run.ts +6 -2
- package/src/functions/set.ts +3 -0
- package/src/functions/sort.ts +5 -1
- package/src/functions/stage.ts +5 -3
- package/src/functions/string.ts +3 -2
- package/src/functions/table.ts +4 -4
- package/src/functions/trinketGive.ts +1 -1
- package/src/functions/utils.ts +1 -1
- package/src/functions/vector.ts +1 -1
- package/src/functions/weighted.ts +2 -2
- package/src/index.ts +1 -0
- package/src/types/AnyFunction.ts +1 -1
- package/src/types/ReadonlyRecord.ts +3 -0
package/dist/indexLua.d.ts
CHANGED
|
@@ -185,6 +185,7 @@ export * from "./types/PlayerIndex";
|
|
|
185
185
|
export * from "./types/PossibleStatType";
|
|
186
186
|
export * from "./types/PublicInterface";
|
|
187
187
|
export * from "./types/ReadonlyMap";
|
|
188
|
+
export * from "./types/ReadonlyRecord";
|
|
188
189
|
export * from "./types/ReadonlySet";
|
|
189
190
|
export * from "./types/StartsWithLowercase";
|
|
190
191
|
export * from "./types/StartsWithUppercase";
|
package/dist/indexLua.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"indexLua.d.ts","sourceRoot":"","sources":["../src/indexLua.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"indexLua.d.ts","sourceRoot":"","sources":["../src/indexLua.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
--[[
|
|
2
2
|
|
|
3
|
-
isaacscript-common 81.0.
|
|
3
|
+
isaacscript-common 81.0.4
|
|
4
4
|
|
|
5
5
|
This is the "isaacscript-common" library, which was created with the IsaacScript tool.
|
|
6
6
|
|
|
@@ -17386,6 +17386,10 @@ ____exports.SerializationBrand.VECTOR = "__VECTOR"
|
|
|
17386
17386
|
____exports.SerializationBrand.DEFAULT_MAP_VALUE = "__TSTL_DEFAULT_MAP_VALUE"
|
|
17387
17387
|
____exports.SerializationBrand.OBJECT_WITH_NUMBER_KEYS = "__TSTL_OBJECT_WITH_NUMBER_KEYS"
|
|
17388
17388
|
____exports.SerializationBrand.TSTL_CLASS = "__TSTL_CLASS"
|
|
17389
|
+
return ____exports
|
|
17390
|
+
end,
|
|
17391
|
+
["types.ReadonlyRecord"] = function(...)
|
|
17392
|
+
local ____exports = {}
|
|
17389
17393
|
return ____exports
|
|
17390
17394
|
end,
|
|
17391
17395
|
["functions.log"] = function(...)
|
|
@@ -44629,6 +44633,9 @@ local __TS__ClassExtends = ____lualib.__TS__ClassExtends
|
|
|
44629
44633
|
local Set = ____lualib.Set
|
|
44630
44634
|
local Map = ____lualib.Map
|
|
44631
44635
|
local __TS__DecorateLegacy = ____lualib.__TS__DecorateLegacy
|
|
44636
|
+
local __TS__SparseArrayNew = ____lualib.__TS__SparseArrayNew
|
|
44637
|
+
local __TS__SparseArrayPush = ____lualib.__TS__SparseArrayPush
|
|
44638
|
+
local __TS__SparseArraySpread = ____lualib.__TS__SparseArraySpread
|
|
44632
44639
|
local ____exports = {}
|
|
44633
44640
|
local ____isaac_2Dtypescript_2Ddefinitions = require("lua_modules.isaac-typescript-definitions.dist.index")
|
|
44634
44641
|
local CacheFlag = ____isaac_2Dtypescript_2Ddefinitions.CacheFlag
|
|
@@ -45291,8 +45298,10 @@ function ModdedElementSets.prototype.getRandomRune(self, seedOrRNG, exceptions)
|
|
|
45291
45298
|
exceptions = {}
|
|
45292
45299
|
end
|
|
45293
45300
|
local runeCardTypes = self:getCardTypesOfType(ItemConfigCardType.RUNE)
|
|
45294
|
-
|
|
45295
|
-
|
|
45301
|
+
local ____array_13 = __TS__SparseArrayNew(table.unpack(exceptions))
|
|
45302
|
+
__TS__SparseArrayPush(____array_13, CardType.RUNE_SHARD)
|
|
45303
|
+
local runeExceptions = {__TS__SparseArraySpread(____array_13)}
|
|
45304
|
+
return getRandomArrayElement(nil, runeCardTypes, seedOrRNG, runeExceptions)
|
|
45296
45305
|
end
|
|
45297
45306
|
__TS__DecorateLegacy({Exported}, ModdedElementSets.prototype, "getRandomRune", true)
|
|
45298
45307
|
return ____exports
|
|
@@ -47063,8 +47072,8 @@ return ____exports
|
|
|
47063
47072
|
end,
|
|
47064
47073
|
["classes.features.other.CustomItemPools"] = function(...)
|
|
47065
47074
|
local ____lualib = require("lualib_bundle")
|
|
47066
|
-
local Map = ____lualib.Map
|
|
47067
47075
|
local __TS__New = ____lualib.__TS__New
|
|
47076
|
+
local Map = ____lualib.Map
|
|
47068
47077
|
local __TS__Class = ____lualib.__TS__Class
|
|
47069
47078
|
local __TS__ClassExtends = ____lualib.__TS__ClassExtends
|
|
47070
47079
|
local __TS__DecorateLegacy = ____lualib.__TS__DecorateLegacy
|
|
@@ -47083,9 +47092,11 @@ local ____utils = require("functions.utils")
|
|
|
47083
47092
|
local assertDefined = ____utils.assertDefined
|
|
47084
47093
|
local ____weighted = require("functions.weighted")
|
|
47085
47094
|
local getRandomIndexFromWeightedArray = ____weighted.getRandomIndexFromWeightedArray
|
|
47095
|
+
local ____ReadonlyMap = require("types.ReadonlyMap")
|
|
47096
|
+
local ReadonlyMap = ____ReadonlyMap.ReadonlyMap
|
|
47086
47097
|
local ____Feature = require("classes.private.Feature")
|
|
47087
47098
|
local Feature = ____Feature.Feature
|
|
47088
|
-
local v = {run = {customItemPools = __TS__New(
|
|
47099
|
+
local v = {run = {customItemPools = __TS__New(ReadonlyMap)}}
|
|
47089
47100
|
local customItemPoolMap = __TS__New(Map)
|
|
47090
47101
|
____exports.CustomItemPools = __TS__Class()
|
|
47091
47102
|
local CustomItemPools = ____exports.CustomItemPools
|
|
@@ -64116,47 +64127,47 @@ local ____exports = {}
|
|
|
64116
64127
|
--- Helper function for non-TypeScript users to check if every element in the array is equal to a
|
|
64117
64128
|
-- condition.
|
|
64118
64129
|
--
|
|
64119
|
-
-- Internally, this just calls `
|
|
64130
|
+
-- Internally, this just calls `Array.every`.
|
|
64120
64131
|
function ____exports.every(self, array, func)
|
|
64121
64132
|
return __TS__ArrayEvery(array, func)
|
|
64122
64133
|
end
|
|
64123
64134
|
--- Helper function for non-TypeScript users to filter the elements in an array. Returns the filtered
|
|
64124
64135
|
-- array.
|
|
64125
64136
|
--
|
|
64126
|
-
-- Internally, this just calls `
|
|
64137
|
+
-- Internally, this just calls `Array.filter`.
|
|
64127
64138
|
function ____exports.filter(self, array, func)
|
|
64128
64139
|
return __TS__ArrayFilter(array, func)
|
|
64129
64140
|
end
|
|
64130
64141
|
--- Helper function for non-TypeScript users to find an element in an array.
|
|
64131
64142
|
--
|
|
64132
|
-
-- Internally, this just calls `
|
|
64143
|
+
-- Internally, this just calls `Array.find`.
|
|
64133
64144
|
function ____exports.find(self, array, func)
|
|
64134
64145
|
return __TS__ArrayFind(array, func)
|
|
64135
64146
|
end
|
|
64136
64147
|
--- Helper function for non-TypeScript users to iterate over an array.
|
|
64137
64148
|
--
|
|
64138
|
-
-- Internally, this just calls `
|
|
64149
|
+
-- Internally, this just calls `Array.forEach`.
|
|
64139
64150
|
function ____exports.forEach(self, array, func)
|
|
64140
64151
|
__TS__ArrayForEach(array, func)
|
|
64141
64152
|
end
|
|
64142
64153
|
--- Helper function for non-TypeScript users to convert an array to a string with the specified
|
|
64143
64154
|
-- separator.
|
|
64144
64155
|
--
|
|
64145
|
-
-- Internally, this just calls `
|
|
64156
|
+
-- Internally, this just calls `Array.join`.
|
|
64146
64157
|
function ____exports.join(self, array, separator)
|
|
64147
64158
|
return __TS__ArrayJoin(array, separator)
|
|
64148
64159
|
end
|
|
64149
64160
|
--- Helper function for non-TypeScript users to convert all of the elements in an array to something
|
|
64150
64161
|
-- else.
|
|
64151
64162
|
--
|
|
64152
|
-
-- Internally, this just calls `
|
|
64163
|
+
-- Internally, this just calls `Array.map`.
|
|
64153
64164
|
function ____exports.map(self, array, func)
|
|
64154
64165
|
return __TS__ArrayMap(array, func)
|
|
64155
64166
|
end
|
|
64156
64167
|
--- Helper function for non-TypeScript users to check if one or more elements in the array is equal
|
|
64157
64168
|
-- to a condition.
|
|
64158
64169
|
--
|
|
64159
|
-
-- Internally, this just calls `
|
|
64170
|
+
-- Internally, this just calls `Array.some`.
|
|
64160
64171
|
function ____exports.some(self, array, func)
|
|
64161
64172
|
return __TS__ArraySome(array, func)
|
|
64162
64173
|
end
|
|
@@ -2,5 +2,5 @@
|
|
|
2
2
|
* Helper type to represent any function. This is safer than using the built-in `Function` type, as
|
|
3
3
|
* it does not completely turn off all type safety.
|
|
4
4
|
*/
|
|
5
|
-
export type AnyFunction = (...args: unknown[]) => unknown;
|
|
5
|
+
export type AnyFunction = (...args: readonly unknown[]) => unknown;
|
|
6
6
|
//# sourceMappingURL=AnyFunction.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AnyFunction.d.ts","sourceRoot":"","sources":["../../src/types/AnyFunction.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,CAAC"}
|
|
1
|
+
{"version":3,"file":"AnyFunction.d.ts","sourceRoot":"","sources":["../../src/types/AnyFunction.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,GAAG,IAAI,EAAE,SAAS,OAAO,EAAE,KAAK,OAAO,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ReadonlyRecord.d.ts","sourceRoot":"","sources":["../../src/types/ReadonlyRecord.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,cAAc,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,CAAC,IAAI,QAAQ,CAC1E,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CACb,CAAC"}
|
package/package.json
CHANGED
|
@@ -94,7 +94,7 @@ export class ModFeature {
|
|
|
94
94
|
| (<T extends boolean>(
|
|
95
95
|
vanilla: T,
|
|
96
96
|
modCallback: T extends true ? ModCallback : ModCallbackCustom,
|
|
97
|
-
...callbackArgs: unknown[]
|
|
97
|
+
...callbackArgs: readonly unknown[]
|
|
98
98
|
) => boolean)
|
|
99
99
|
| null = null;
|
|
100
100
|
|
|
@@ -249,12 +249,12 @@ function addCallback(
|
|
|
249
249
|
modCallback: ModCallback | ModCallbackCustom,
|
|
250
250
|
priority: CallbackPriority | int,
|
|
251
251
|
callback: Function, // eslint-disable-line @typescript-eslint/ban-types
|
|
252
|
-
parameters: unknown[],
|
|
252
|
+
parameters: readonly unknown[],
|
|
253
253
|
vanilla: boolean,
|
|
254
254
|
) {
|
|
255
255
|
// We need to wrap the callback in a new function so that we can explicitly pass the class as the
|
|
256
256
|
// first argument. (Otherwise, the method will not be able to properly access `this`.
|
|
257
|
-
const wrappedCallback = (...callbackArgs: unknown[]) => {
|
|
257
|
+
const wrappedCallback = (...callbackArgs: readonly unknown[]) => {
|
|
258
258
|
// eslint-disable-next-line @typescript-eslint/dot-notation
|
|
259
259
|
const conditionalFunc = modFeature["shouldCallbackMethodsFire"];
|
|
260
260
|
if (conditionalFunc !== null) {
|
|
@@ -266,7 +266,7 @@ function addCallback(
|
|
|
266
266
|
|
|
267
267
|
const castedCallback = callback as (
|
|
268
268
|
this: void,
|
|
269
|
-
...args: unknown[]
|
|
269
|
+
...args: readonly unknown[]
|
|
270
270
|
) => unknown;
|
|
271
271
|
return castedCallback(modFeature, ...callbackArgs);
|
|
272
272
|
};
|
|
@@ -453,7 +453,7 @@ function getExportedMethodsFromFeature(
|
|
|
453
453
|
|
|
454
454
|
// In order for "this" to work properly in the method, we have to wrap the method invocation in
|
|
455
455
|
// an arrow function.
|
|
456
|
-
const wrappedMethod = (...args: unknown[]) =>
|
|
456
|
+
const wrappedMethod = (...args: readonly unknown[]) =>
|
|
457
457
|
// We use a non-null assertion since we have already validated that the function exists. (See
|
|
458
458
|
// the above comment.)
|
|
459
459
|
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
@@ -125,6 +125,7 @@ export class PlayerReorderedCallbacks extends Feature {
|
|
|
125
125
|
}
|
|
126
126
|
|
|
127
127
|
function dequeue(
|
|
128
|
+
// eslint-disable-next-line isaacscript/prefer-readonly-parameter-types
|
|
128
129
|
queue: QueueElement[],
|
|
129
130
|
fireFunc: (player: EntityPlayer, renderOffset: Vector) => void,
|
|
130
131
|
) {
|
|
@@ -6,12 +6,16 @@ import { arrayRemoveIndexInPlace } from "../../../functions/array";
|
|
|
6
6
|
import { copyMap } from "../../../functions/map";
|
|
7
7
|
import { assertDefined } from "../../../functions/utils";
|
|
8
8
|
import { getRandomIndexFromWeightedArray } from "../../../functions/weighted";
|
|
9
|
+
import { ReadonlyMap } from "../../../types/ReadonlyMap";
|
|
9
10
|
import type { WeightedArray } from "../../../types/WeightedArray";
|
|
10
11
|
import { Feature } from "../../private/Feature";
|
|
11
12
|
|
|
12
13
|
const v = {
|
|
13
14
|
run: {
|
|
14
|
-
customItemPools: new
|
|
15
|
+
customItemPools: new ReadonlyMap<
|
|
16
|
+
ItemPoolType,
|
|
17
|
+
WeightedArray<CollectibleType>
|
|
18
|
+
>(),
|
|
15
19
|
},
|
|
16
20
|
};
|
|
17
21
|
|
|
@@ -80,7 +84,7 @@ export class CustomItemPools extends Feature {
|
|
|
80
84
|
@Exported
|
|
81
85
|
public registerCustomItemPool(
|
|
82
86
|
itemPoolTypeCustom: ItemPoolType,
|
|
83
|
-
collectibles: WeightedArray<CollectibleType
|
|
87
|
+
collectibles: Readonly<WeightedArray<CollectibleType>>,
|
|
84
88
|
): void {
|
|
85
89
|
if (customItemPoolMap.has(itemPoolTypeCustom)) {
|
|
86
90
|
error(
|
|
@@ -88,7 +92,10 @@ export class CustomItemPools extends Feature {
|
|
|
88
92
|
);
|
|
89
93
|
}
|
|
90
94
|
|
|
91
|
-
customItemPoolMap.set(
|
|
95
|
+
customItemPoolMap.set(
|
|
96
|
+
itemPoolTypeCustom,
|
|
97
|
+
collectibles as WeightedArray<CollectibleType>,
|
|
98
|
+
);
|
|
92
99
|
}
|
|
93
100
|
|
|
94
101
|
/**
|
|
@@ -164,7 +164,10 @@ export class DisableInputs extends Feature {
|
|
|
164
164
|
* @public
|
|
165
165
|
*/
|
|
166
166
|
@Exported
|
|
167
|
-
public disableInputs(
|
|
167
|
+
public disableInputs(
|
|
168
|
+
key: string,
|
|
169
|
+
...buttonActions: readonly ButtonAction[]
|
|
170
|
+
): void {
|
|
168
171
|
const buttonActionsSet = new ReadonlySet(buttonActions);
|
|
169
172
|
v.run.disableInputs.set(key, buttonActionsSet);
|
|
170
173
|
}
|
|
@@ -215,8 +215,8 @@ function removeItemsAndTrinketsThatAffectItemPools(): {
|
|
|
215
215
|
}
|
|
216
216
|
|
|
217
217
|
function restoreItemsAndTrinketsThatAffectItemPools(
|
|
218
|
-
removedItemsMap:
|
|
219
|
-
removedTrinketsMap:
|
|
218
|
+
removedItemsMap: ReadonlyMap<PlayerIndex, CollectibleType[]>,
|
|
219
|
+
removedTrinketsMap: ReadonlyMap<PlayerIndex, TrinketType[]>,
|
|
220
220
|
) {
|
|
221
221
|
for (const player of getAllPlayers()) {
|
|
222
222
|
const removedItems = mapGetPlayer(removedItemsMap, player);
|
|
@@ -1362,7 +1362,7 @@ export class ModdedElementSets extends Feature {
|
|
|
1362
1362
|
*/
|
|
1363
1363
|
@Exported
|
|
1364
1364
|
public getCardTypesOfType(
|
|
1365
|
-
...itemConfigCardTypes: ItemConfigCardType[]
|
|
1365
|
+
...itemConfigCardTypes: readonly ItemConfigCardType[]
|
|
1366
1366
|
): readonly CardType[] {
|
|
1367
1367
|
this.lazyInit();
|
|
1368
1368
|
|
|
@@ -1406,7 +1406,7 @@ export class ModdedElementSets extends Feature {
|
|
|
1406
1406
|
public getRandomCardTypeOfType(
|
|
1407
1407
|
itemConfigCardType: ItemConfigCardType,
|
|
1408
1408
|
seedOrRNG: Seed | RNG | undefined,
|
|
1409
|
-
exceptions: CardType[] = [],
|
|
1409
|
+
exceptions: readonly CardType[] = [],
|
|
1410
1410
|
): CardType {
|
|
1411
1411
|
const cardTypes = this.getCardTypesOfType(itemConfigCardType);
|
|
1412
1412
|
return getRandomArrayElement(cardTypes, seedOrRNG, exceptions);
|
|
@@ -1436,7 +1436,7 @@ export class ModdedElementSets extends Feature {
|
|
|
1436
1436
|
@Exported
|
|
1437
1437
|
public getRandomCard(
|
|
1438
1438
|
seedOrRNG: Seed | RNG | undefined,
|
|
1439
|
-
exceptions: CardType[] = [],
|
|
1439
|
+
exceptions: readonly CardType[] = [],
|
|
1440
1440
|
): CardType {
|
|
1441
1441
|
this.lazyInit();
|
|
1442
1442
|
return getRandomArrayElement(this.cardTypeCardArray, seedOrRNG, exceptions);
|
|
@@ -1463,10 +1463,10 @@ export class ModdedElementSets extends Feature {
|
|
|
1463
1463
|
@Exported
|
|
1464
1464
|
public getRandomRune(
|
|
1465
1465
|
seedOrRNG: Seed | RNG | undefined,
|
|
1466
|
-
exceptions: CardType[] = [],
|
|
1466
|
+
exceptions: readonly CardType[] = [],
|
|
1467
1467
|
): CardType {
|
|
1468
1468
|
const runeCardTypes = this.getCardTypesOfType(ItemConfigCardType.RUNE);
|
|
1469
|
-
exceptions
|
|
1470
|
-
return getRandomArrayElement(runeCardTypes, seedOrRNG,
|
|
1469
|
+
const runeExceptions = [...exceptions, CardType.RUNE_SHARD];
|
|
1470
|
+
return getRandomArrayElement(runeCardTypes, seedOrRNG, runeExceptions);
|
|
1471
1471
|
}
|
|
1472
1472
|
}
|
|
@@ -279,7 +279,7 @@ export class PickupIndexCreation extends Feature {
|
|
|
279
279
|
|
|
280
280
|
function getStoredPickupIndex(
|
|
281
281
|
pickup: Entity,
|
|
282
|
-
pickupDescriptions:
|
|
282
|
+
pickupDescriptions: ReadonlyMap<PickupIndex, PickupDescription>,
|
|
283
283
|
): PickupIndex | undefined {
|
|
284
284
|
for (const [pickupIndex, pickupDescription] of pickupDescriptions) {
|
|
285
285
|
if (
|
|
@@ -347,6 +347,7 @@ export class RunInNFrames extends Feature {
|
|
|
347
347
|
}
|
|
348
348
|
|
|
349
349
|
function checkExecuteQueuedFunctions(
|
|
350
|
+
// eslint-disable-next-line isaacscript/prefer-readonly-parameter-types
|
|
350
351
|
queuedFunctions: QueuedFunction[],
|
|
351
352
|
frameCount: int,
|
|
352
353
|
newNumRoomsEntered: int,
|
|
@@ -367,6 +368,7 @@ function checkExecuteQueuedFunctions(
|
|
|
367
368
|
}
|
|
368
369
|
|
|
369
370
|
function checkExecuteIntervalFunctions(
|
|
371
|
+
// eslint-disable-next-line isaacscript/prefer-readonly-parameter-types
|
|
370
372
|
intervalFunctions: IntervalFunction[],
|
|
371
373
|
frameCount: int,
|
|
372
374
|
newNumRoomsEntered: int,
|
|
@@ -467,7 +467,9 @@ export class SaveDataManager extends Feature {
|
|
|
467
467
|
* @public
|
|
468
468
|
*/
|
|
469
469
|
@Exported
|
|
470
|
-
public saveDataManagerRegisterClass(
|
|
470
|
+
public saveDataManagerRegisterClass(
|
|
471
|
+
...tstlClasses: readonly AnyClass[]
|
|
472
|
+
): void {
|
|
471
473
|
for (const tstlClass of tstlClasses) {
|
|
472
474
|
const { name } = tstlClass;
|
|
473
475
|
assertDefined(
|
package/src/core/upgradeMod.ts
CHANGED
|
@@ -71,7 +71,10 @@ export function upgradeMod<T extends readonly ISCFeature[] = never[]>(
|
|
|
71
71
|
}
|
|
72
72
|
|
|
73
73
|
/** Initialize every optional feature that the end-user specified, if any. */
|
|
74
|
-
function initOptionalFeatures(
|
|
74
|
+
function initOptionalFeatures(
|
|
75
|
+
mod: ModUpgraded,
|
|
76
|
+
features: readonly ISCFeature[],
|
|
77
|
+
) {
|
|
75
78
|
for (const feature of features) {
|
|
76
79
|
// We intentionally access the private method here, so we use the string index escape hatch:
|
|
77
80
|
// https://github.com/microsoft/TypeScript/issues/19335
|
package/src/functions/array.ts
CHANGED
|
@@ -85,6 +85,7 @@ export function arrayRemoveAll<T>(
|
|
|
85
85
|
* @returns True if one or more elements were removed, false otherwise.
|
|
86
86
|
*/
|
|
87
87
|
export function arrayRemoveAllInPlace<T>(
|
|
88
|
+
// eslint-disable-next-line isaacscript/prefer-readonly-parameter-types
|
|
88
89
|
array: T[],
|
|
89
90
|
...elementsToRemove: readonly T[]
|
|
90
91
|
): boolean {
|
|
@@ -117,6 +118,7 @@ export function arrayRemoveAllInPlace<T>(
|
|
|
117
118
|
*/
|
|
118
119
|
// eslint-disable-next-line isaacscript/no-mutable-return
|
|
119
120
|
export function arrayRemoveInPlace<T>(
|
|
121
|
+
// eslint-disable-next-line isaacscript/prefer-readonly-parameter-types
|
|
120
122
|
array: T[],
|
|
121
123
|
...elementsToRemove: readonly T[]
|
|
122
124
|
): T[] {
|
|
@@ -167,8 +169,9 @@ export function arrayRemoveIndex<T>(
|
|
|
167
169
|
*/
|
|
168
170
|
// eslint-disable-next-line isaacscript/no-mutable-return
|
|
169
171
|
export function arrayRemoveIndexInPlace<T>(
|
|
172
|
+
// eslint-disable-next-line isaacscript/prefer-readonly-parameter-types
|
|
170
173
|
array: T[],
|
|
171
|
-
...indexesToRemove: int[]
|
|
174
|
+
...indexesToRemove: readonly int[]
|
|
172
175
|
): T[] {
|
|
173
176
|
const legalIndexes = indexesToRemove.filter(
|
|
174
177
|
(i) => i >= 0 && i < array.length,
|
|
@@ -191,7 +194,7 @@ export function arrayRemoveIndexInPlace<T>(
|
|
|
191
194
|
return removedElements;
|
|
192
195
|
}
|
|
193
196
|
|
|
194
|
-
export function arrayToString(array: unknown[]): string {
|
|
197
|
+
export function arrayToString(array: readonly unknown[]): string {
|
|
195
198
|
if (array.length === 0) {
|
|
196
199
|
return "[]";
|
|
197
200
|
}
|
|
@@ -245,6 +248,7 @@ export function copyArray<T>(oldArray: readonly T[], numElements?: int): T[] {
|
|
|
245
248
|
}
|
|
246
249
|
|
|
247
250
|
/** Helper function to remove all of the elements in an array in-place. */
|
|
251
|
+
// eslint-disable-next-line isaacscript/prefer-readonly-parameter-types
|
|
248
252
|
export function emptyArray<T>(array: T[]): void {
|
|
249
253
|
array.splice(0, array.length);
|
|
250
254
|
}
|
|
@@ -335,6 +339,7 @@ function addCombinations<T>(
|
|
|
335
339
|
n: number,
|
|
336
340
|
src: readonly T[],
|
|
337
341
|
got: readonly T[],
|
|
342
|
+
// eslint-disable-next-line isaacscript/prefer-readonly-parameter-types
|
|
338
343
|
all: Array<readonly T[]>,
|
|
339
344
|
) {
|
|
340
345
|
if (n === 0) {
|
|
@@ -367,7 +372,9 @@ export function getArrayIndexes<T>(array: readonly T[]): readonly int[] {
|
|
|
367
372
|
* Helper function to get the highest value in an array. Returns undefined if there were no elements
|
|
368
373
|
* in the array.
|
|
369
374
|
*/
|
|
370
|
-
export function getHighestArrayElement(
|
|
375
|
+
export function getHighestArrayElement(
|
|
376
|
+
array: readonly number[],
|
|
377
|
+
): number | undefined {
|
|
371
378
|
if (array.length === 0) {
|
|
372
379
|
return undefined;
|
|
373
380
|
}
|
|
@@ -387,7 +394,9 @@ export function getHighestArrayElement(array: number[]): number | undefined {
|
|
|
387
394
|
* Helper function to get the lowest value in an array. Returns undefined if there were no elements
|
|
388
395
|
* in the array.
|
|
389
396
|
*/
|
|
390
|
-
export function getLowestArrayElement(
|
|
397
|
+
export function getLowestArrayElement(
|
|
398
|
+
array: readonly number[],
|
|
399
|
+
): number | undefined {
|
|
391
400
|
if (array.length === 0) {
|
|
392
401
|
return undefined;
|
|
393
402
|
}
|
|
@@ -452,6 +461,7 @@ export function getRandomArrayElement<T>(
|
|
|
452
461
|
* @param exceptions Optional. An array of elements to skip over if selected.
|
|
453
462
|
*/
|
|
454
463
|
export function getRandomArrayElementAndRemove<T>(
|
|
464
|
+
// eslint-disable-next-line isaacscript/prefer-readonly-parameter-types
|
|
455
465
|
array: T[],
|
|
456
466
|
seedOrRNG: Seed | RNG | undefined,
|
|
457
467
|
exceptions: readonly T[] = [],
|
|
@@ -562,7 +572,7 @@ export function isArray(
|
|
|
562
572
|
*
|
|
563
573
|
* For example, `[2, 3, 4]` would return true, and `[2, 3, 5]` would return false.
|
|
564
574
|
*/
|
|
565
|
-
export function isArrayContiguous(array: int[]): boolean {
|
|
575
|
+
export function isArrayContiguous(array: readonly int[]): boolean {
|
|
566
576
|
let lastValue: int | undefined;
|
|
567
577
|
for (const element of array) {
|
|
568
578
|
if (lastValue === undefined) {
|
|
@@ -586,6 +596,7 @@ export function isArrayInArray<T>(
|
|
|
586
596
|
}
|
|
587
597
|
|
|
588
598
|
/** Helper function to set every element in an array to a specific value. */
|
|
599
|
+
// eslint-disable-next-line isaacscript/prefer-readonly-parameter-types
|
|
589
600
|
export function setAllArrayElements<T>(array: T[], value: T): void {
|
|
590
601
|
for (let i = 0; i < array.length; i++) {
|
|
591
602
|
array[i] = value;
|
|
@@ -630,6 +641,7 @@ export function shuffleArray<T>(
|
|
|
630
641
|
* a random seed.
|
|
631
642
|
*/
|
|
632
643
|
export function shuffleArrayInPlace<T>(
|
|
644
|
+
// eslint-disable-next-line isaacscript/prefer-readonly-parameter-types
|
|
633
645
|
array: T[],
|
|
634
646
|
seedOrRNG: Seed | RNG | undefined,
|
|
635
647
|
): void {
|
|
@@ -653,6 +665,7 @@ export function sumArray(array: readonly number[]): number {
|
|
|
653
665
|
/**
|
|
654
666
|
* Helper function to swap two different array elements. (The elements will be swapped in-place.)
|
|
655
667
|
*/
|
|
668
|
+
// eslint-disable-next-line isaacscript/prefer-readonly-parameter-types
|
|
656
669
|
export function swapArrayElements<T>(array: T[], i: number, j: number): void {
|
|
657
670
|
const value1 = array[i]!; // eslint-disable-line @typescript-eslint/no-non-null-assertion
|
|
658
671
|
const value2 = array[j]!; // eslint-disable-line @typescript-eslint/no-non-null-assertion
|
|
@@ -12,11 +12,11 @@
|
|
|
12
12
|
* Helper function for non-TypeScript users to check if every element in the array is equal to a
|
|
13
13
|
* condition.
|
|
14
14
|
*
|
|
15
|
-
* Internally, this just calls `
|
|
15
|
+
* Internally, this just calls `Array.every`.
|
|
16
16
|
*/
|
|
17
17
|
export function every<T>(
|
|
18
|
-
array: T[],
|
|
19
|
-
func: (value: T, index: number, array: T[]) => boolean,
|
|
18
|
+
array: readonly T[],
|
|
19
|
+
func: (value: T, index: number, array: readonly T[]) => boolean,
|
|
20
20
|
): boolean {
|
|
21
21
|
return array.every(func);
|
|
22
22
|
}
|
|
@@ -25,11 +25,11 @@ export function every<T>(
|
|
|
25
25
|
* Helper function for non-TypeScript users to filter the elements in an array. Returns the filtered
|
|
26
26
|
* array.
|
|
27
27
|
*
|
|
28
|
-
* Internally, this just calls `
|
|
28
|
+
* Internally, this just calls `Array.filter`.
|
|
29
29
|
*/
|
|
30
30
|
export function filter<T>(
|
|
31
|
-
array: T[],
|
|
32
|
-
func: (value: T, index: number, array: T[]) => boolean,
|
|
31
|
+
array: readonly T[],
|
|
32
|
+
func: (value: T, index: number, array: readonly T[]) => boolean,
|
|
33
33
|
): readonly T[] {
|
|
34
34
|
return array.filter(func);
|
|
35
35
|
}
|
|
@@ -37,11 +37,11 @@ export function filter<T>(
|
|
|
37
37
|
/**
|
|
38
38
|
* Helper function for non-TypeScript users to find an element in an array.
|
|
39
39
|
*
|
|
40
|
-
* Internally, this just calls `
|
|
40
|
+
* Internally, this just calls `Array.find`.
|
|
41
41
|
*/
|
|
42
42
|
export function find<T>(
|
|
43
|
-
array: T[],
|
|
44
|
-
func: (value: T, index: number, array: T[]) => boolean,
|
|
43
|
+
array: readonly T[],
|
|
44
|
+
func: (value: T, index: number, array: readonly T[]) => boolean,
|
|
45
45
|
): T | undefined {
|
|
46
46
|
return array.find(func);
|
|
47
47
|
}
|
|
@@ -49,11 +49,11 @@ export function find<T>(
|
|
|
49
49
|
/**
|
|
50
50
|
* Helper function for non-TypeScript users to iterate over an array.
|
|
51
51
|
*
|
|
52
|
-
* Internally, this just calls `
|
|
52
|
+
* Internally, this just calls `Array.forEach`.
|
|
53
53
|
*/
|
|
54
54
|
export function forEach<T>(
|
|
55
|
-
array: T[],
|
|
56
|
-
func: (value: T, index: number, array: T[]) => void,
|
|
55
|
+
array: readonly T[],
|
|
56
|
+
func: (value: T, index: number, array: readonly T[]) => void,
|
|
57
57
|
): void {
|
|
58
58
|
array.forEach(func); // eslint-disable-line unicorn/no-array-for-each
|
|
59
59
|
}
|
|
@@ -64,9 +64,9 @@ export function forEach<T>(
|
|
|
64
64
|
* Helper function for non-TypeScript users to convert an array to a string with the specified
|
|
65
65
|
* separator.
|
|
66
66
|
*
|
|
67
|
-
* Internally, this just calls `
|
|
67
|
+
* Internally, this just calls `Array.join`.
|
|
68
68
|
*/
|
|
69
|
-
export function join<T>(array: T[], separator: string): string {
|
|
69
|
+
export function join<T>(array: readonly T[], separator: string): string {
|
|
70
70
|
return array.join(separator);
|
|
71
71
|
}
|
|
72
72
|
|
|
@@ -74,11 +74,11 @@ export function join<T>(array: T[], separator: string): string {
|
|
|
74
74
|
* Helper function for non-TypeScript users to convert all of the elements in an array to something
|
|
75
75
|
* else.
|
|
76
76
|
*
|
|
77
|
-
* Internally, this just calls `
|
|
77
|
+
* Internally, this just calls `Array.map`.
|
|
78
78
|
*/
|
|
79
79
|
export function map<T, U>(
|
|
80
|
-
array: T[],
|
|
81
|
-
func: (value: T, index: number, array: T[]) => U,
|
|
80
|
+
array: readonly T[],
|
|
81
|
+
func: (value: T, index: number, array: readonly T[]) => U,
|
|
82
82
|
): readonly U[] {
|
|
83
83
|
return array.map(func);
|
|
84
84
|
}
|
|
@@ -87,11 +87,11 @@ export function map<T, U>(
|
|
|
87
87
|
* Helper function for non-TypeScript users to check if one or more elements in the array is equal
|
|
88
88
|
* to a condition.
|
|
89
89
|
*
|
|
90
|
-
* Internally, this just calls `
|
|
90
|
+
* Internally, this just calls `Array.some`.
|
|
91
91
|
*/
|
|
92
92
|
export function some<T>(
|
|
93
|
-
array: T[],
|
|
94
|
-
func: (value: T, index: number, array: T[]) => boolean,
|
|
93
|
+
array: readonly T[],
|
|
94
|
+
func: (value: T, index: number, array: readonly T[]) => boolean,
|
|
95
95
|
): boolean {
|
|
96
96
|
return array.some(func);
|
|
97
97
|
}
|
|
@@ -15,7 +15,7 @@ import { log } from "./log";
|
|
|
15
15
|
*/
|
|
16
16
|
export function benchmark(
|
|
17
17
|
numTrials: int,
|
|
18
|
-
...functions:
|
|
18
|
+
...functions: ReadonlyArray<() => void>
|
|
19
19
|
): readonly int[] {
|
|
20
20
|
log(`Benchmarking ${functions.length} function(s) with ${numTrials} trials.`);
|
|
21
21
|
|
package/src/functions/bitwise.ts
CHANGED
|
@@ -14,7 +14,7 @@ export function arrayToBitFlags<T extends BitFlag | BitFlag128>(
|
|
|
14
14
|
}
|
|
15
15
|
|
|
16
16
|
/** Helper function to convert an array of bits to the resulting decimal number. */
|
|
17
|
-
export function convertBinaryToDecimal(bits: int[]): number {
|
|
17
|
+
export function convertBinaryToDecimal(bits: readonly int[]): number {
|
|
18
18
|
const bitsString = bits.join("");
|
|
19
19
|
return Number.parseInt(bitsString, 2);
|
|
20
20
|
}
|
package/src/functions/cards.ts
CHANGED
|
@@ -90,7 +90,7 @@ export function getItemConfigCardType(
|
|
|
90
90
|
*/
|
|
91
91
|
export function hasCard(
|
|
92
92
|
player: EntityPlayer,
|
|
93
|
-
...cardTypes: CardType[]
|
|
93
|
+
...cardTypes: readonly CardType[]
|
|
94
94
|
): boolean {
|
|
95
95
|
const cardTypesSet = new Set(cardTypes);
|
|
96
96
|
return POCKET_ITEM_SLOT_VALUES.some((pocketItemSlot) => {
|
|
@@ -114,7 +114,7 @@ export function onAnyChallenge(): boolean {
|
|
|
114
114
|
* This function is variadic, meaning that you can specify as many challenges as you want to check
|
|
115
115
|
* for.
|
|
116
116
|
*/
|
|
117
|
-
export function onChallenge(...challenges: Challenge[]): boolean {
|
|
117
|
+
export function onChallenge(...challenges: readonly Challenge[]): boolean {
|
|
118
118
|
const challenge = Isaac.GetChallenge();
|
|
119
119
|
return challenges.includes(challenge);
|
|
120
120
|
}
|