isaacscript-common 57.0.2 → 57.1.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.
- package/dist/index.rollup.d.ts +8 -8
- package/dist/isaacscript-common.lua +14 -6
- package/dist/src/functions/array.d.ts +8 -0
- package/dist/src/functions/array.d.ts.map +1 -1
- package/dist/src/functions/array.lua +9 -0
- package/dist/src/functions/arrayLua.d.ts +0 -9
- package/dist/src/functions/arrayLua.d.ts.map +1 -1
- package/dist/src/functions/arrayLua.lua +0 -10
- package/dist/src/functions/external.d.ts +2 -2
- package/dist/src/functions/external.d.ts.map +1 -1
- package/dist/src/functions/external.lua +6 -3
- package/dist/src/index.d.ts +1 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/types/WidenLiteral.d.ts +2 -0
- package/dist/src/types/WidenLiteral.d.ts.map +1 -0
- package/dist/src/types/WidenLiteral.lua +2 -0
- package/package.json +1 -1
- package/src/functions/array.ts +15 -0
- package/src/functions/arrayLua.ts +1 -11
- package/src/functions/external.ts +5 -3
- package/src/index.ts +1 -0
- package/src/types/WidenLiteral.ts +11 -0
package/dist/index.rollup.d.ts
CHANGED
|
@@ -8219,14 +8219,12 @@ export declare function inBigRoom(): boolean;
|
|
|
8219
8219
|
export declare function inBossRoomOf(bossID: BossID): boolean;
|
|
8220
8220
|
|
|
8221
8221
|
/**
|
|
8222
|
-
*
|
|
8222
|
+
* Similar to the `Array.includes` method, but works on a widened version of the array.
|
|
8223
8223
|
*
|
|
8224
|
-
*
|
|
8225
|
-
*
|
|
8226
|
-
*
|
|
8227
|
-
* Internally, this just calls `array.includes`.
|
|
8224
|
+
* This is useful when the normal `Array.includes` produces a type error from an array that uses an
|
|
8225
|
+
* `as const` assertion.
|
|
8228
8226
|
*/
|
|
8229
|
-
export declare function includes<T
|
|
8227
|
+
export declare function includes<T, S extends WidenLiteral<T>>(haystack: readonly S[], needle: WidenLiteral<T>): needle is S;
|
|
8230
8228
|
|
|
8231
8229
|
/**
|
|
8232
8230
|
* Helper function for determining whether the current room is a crawl space. Use this function over
|
|
@@ -15220,8 +15218,8 @@ declare interface ReadonlySetConstructor {
|
|
|
15220
15218
|
*
|
|
15221
15219
|
* Note that calling this function is not normally necessary when removing collectibles from
|
|
15222
15220
|
* players. For example, when you remove a collectible with the `EntityPlayer.RemoveCollectible`
|
|
15223
|
-
* method, a
|
|
15224
|
-
* remove it. However, in some cases,
|
|
15221
|
+
* method, a message is sent to the log file by the game and the item tracker will automatically
|
|
15222
|
+
* remove it. However, in some cases, manually removing collectibles can be useful:
|
|
15225
15223
|
*
|
|
15226
15224
|
* - We may be giving the player a "fake" collectible (e.g. 1-Up for the purposes of an extra life)
|
|
15227
15225
|
* and do not want the fake collectible to show up on the tracker.
|
|
@@ -18314,6 +18312,8 @@ export declare const VectorZero: Readonly<Vector>;
|
|
|
18314
18312
|
/** An array where each element is paired with a number indicating that element's weight. */
|
|
18315
18313
|
export declare type WeightedArray<T> = Array<[T, float]>;
|
|
18316
18314
|
|
|
18315
|
+
export declare type WidenLiteral<T> = T extends string ? string : T extends number ? number : T extends boolean ? boolean : T extends bigint ? bigint : T extends symbol ? symbol : T;
|
|
18316
|
+
|
|
18317
18317
|
/**
|
|
18318
18318
|
* Assuming that we are on the frame of fatal damage, this function returns whether Mysterious Paper
|
|
18319
18319
|
* would rotate to Missing Poster on the frame that the "Game Over" screen would appear (which would
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
--[[
|
|
2
2
|
|
|
3
|
-
isaacscript-common 57.0
|
|
3
|
+
isaacscript-common 57.1.0
|
|
4
4
|
|
|
5
5
|
This is the "isaacscript-common" library, which was created with the IsaacScript tool.
|
|
6
6
|
|
|
@@ -16384,6 +16384,10 @@ function ____exports.newTSTLClass(self, oldClass)
|
|
|
16384
16384
|
newClassMetatable:____constructor()
|
|
16385
16385
|
return newClass
|
|
16386
16386
|
end
|
|
16387
|
+
return ____exports
|
|
16388
|
+
end,
|
|
16389
|
+
["src.types.WidenLiteral"] = function(...)
|
|
16390
|
+
local ____exports = {}
|
|
16387
16391
|
return ____exports
|
|
16388
16392
|
end,
|
|
16389
16393
|
["src.enums.private.SerializationBrand"] = function(...)
|
|
@@ -16898,6 +16902,7 @@ local __TS__ArraySlice = ____lualib.__TS__ArraySlice
|
|
|
16898
16902
|
local __TS__SparseArrayNew = ____lualib.__TS__SparseArrayNew
|
|
16899
16903
|
local __TS__SparseArrayPush = ____lualib.__TS__SparseArrayPush
|
|
16900
16904
|
local __TS__SparseArraySpread = ____lualib.__TS__SparseArraySpread
|
|
16905
|
+
local __TS__ArrayIncludes = ____lualib.__TS__ArrayIncludes
|
|
16901
16906
|
local __TS__ObjectKeys = ____lualib.__TS__ObjectKeys
|
|
16902
16907
|
local __TS__ArraySome = ____lualib.__TS__ArraySome
|
|
16903
16908
|
local __TS__ArrayReduce = ____lualib.__TS__ArrayReduce
|
|
@@ -17203,6 +17208,10 @@ function ____exports.getRandomArrayElementAndRemove(self, array, seedOrRNG, exce
|
|
|
17203
17208
|
____exports.arrayRemoveInPlace(nil, array, randomArrayElement)
|
|
17204
17209
|
return randomArrayElement
|
|
17205
17210
|
end
|
|
17211
|
+
function ____exports.includes(self, haystack, needle)
|
|
17212
|
+
local _haystack = haystack
|
|
17213
|
+
return __TS__ArrayIncludes(_haystack, needle)
|
|
17214
|
+
end
|
|
17206
17215
|
function ____exports.isArray(self, object, ensureContiguousValues)
|
|
17207
17216
|
if ensureContiguousValues == nil then
|
|
17208
17217
|
ensureContiguousValues = true
|
|
@@ -35365,12 +35374,15 @@ return ____exports
|
|
|
35365
35374
|
end,
|
|
35366
35375
|
["src.functions.external"] = function(...)
|
|
35367
35376
|
local ____exports = {}
|
|
35377
|
+
local ____collectibles = require("src.functions.collectibles")
|
|
35378
|
+
local getCollectibleName = ____collectibles.getCollectibleName
|
|
35368
35379
|
local REBIRTH_ITEM_TRACKER_REMOVE_COLLECTIBLE_COMMAND = "REBIRTH_ITEM_TRACKER_REMOVE_COLLECTIBLE"
|
|
35369
35380
|
local REBIRTH_ITEM_TRACKER_WRITE_TO_FILE_COMMAND = "REBIRTH_ITEM_TRACKER_WRITE_TO_FILE"
|
|
35370
35381
|
function ____exports.rebirthItemTrackerRemoveCollectible(self, ...)
|
|
35371
35382
|
local collectibleTypes = {...}
|
|
35372
35383
|
for ____, collectibleType in ipairs(collectibleTypes) do
|
|
35373
|
-
|
|
35384
|
+
local collectibleName = getCollectibleName(nil, collectibleType)
|
|
35385
|
+
Isaac.DebugString(((((REBIRTH_ITEM_TRACKER_REMOVE_COLLECTIBLE_COMMAND .. " Removing collectible ") .. tostring(collectibleType)) .. " (") .. collectibleName) .. ") on player 0 (Player)")
|
|
35374
35386
|
end
|
|
35375
35387
|
end
|
|
35376
35388
|
function ____exports.rebirthItemTrackerWriteToFile(self, msg)
|
|
@@ -54267,7 +54279,6 @@ local __TS__ArrayEvery = ____lualib.__TS__ArrayEvery
|
|
|
54267
54279
|
local __TS__ArrayFilter = ____lualib.__TS__ArrayFilter
|
|
54268
54280
|
local __TS__ArrayFind = ____lualib.__TS__ArrayFind
|
|
54269
54281
|
local __TS__ArrayForEach = ____lualib.__TS__ArrayForEach
|
|
54270
|
-
local __TS__ArrayIncludes = ____lualib.__TS__ArrayIncludes
|
|
54271
54282
|
local __TS__ArrayJoin = ____lualib.__TS__ArrayJoin
|
|
54272
54283
|
local __TS__ArrayMap = ____lualib.__TS__ArrayMap
|
|
54273
54284
|
local __TS__ArraySome = ____lualib.__TS__ArraySome
|
|
@@ -54284,9 +54295,6 @@ end
|
|
|
54284
54295
|
function ____exports.forEach(self, array, func)
|
|
54285
54296
|
__TS__ArrayForEach(array, func)
|
|
54286
54297
|
end
|
|
54287
|
-
function ____exports.includes(self, array, element)
|
|
54288
|
-
return __TS__ArrayIncludes(array, element)
|
|
54289
|
-
end
|
|
54290
54298
|
function ____exports.join(self, array, separator)
|
|
54291
54299
|
return __TS__ArrayJoin(array, separator)
|
|
54292
54300
|
end
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
/// <reference types="isaac-typescript-definitions" />
|
|
2
2
|
/// <reference types="isaac-typescript-definitions" />
|
|
3
3
|
/// <reference types="isaac-typescript-definitions" />
|
|
4
|
+
import type { WidenLiteral } from "../types/WidenLiteral";
|
|
4
5
|
/**
|
|
5
6
|
* Helper function for determining if two arrays contain the exact same elements. Note that this
|
|
6
7
|
* only performs a shallow comparison.
|
|
@@ -178,6 +179,13 @@ export declare function getRandomArrayElementAndRemove<T>(array: T[], seedOrRNG?
|
|
|
178
179
|
* index. Default is an empty array.
|
|
179
180
|
*/
|
|
180
181
|
export declare function getRandomArrayIndex<T>(array: T[] | readonly T[], seedOrRNG?: Seed | RNG, exceptions?: int[] | readonly int[]): int;
|
|
182
|
+
/**
|
|
183
|
+
* Similar to the `Array.includes` method, but works on a widened version of the array.
|
|
184
|
+
*
|
|
185
|
+
* This is useful when the normal `Array.includes` produces a type error from an array that uses an
|
|
186
|
+
* `as const` assertion.
|
|
187
|
+
*/
|
|
188
|
+
export declare function includes<T, S extends WidenLiteral<T>>(haystack: readonly S[], needle: WidenLiteral<T>): needle is S;
|
|
181
189
|
/**
|
|
182
190
|
* Since Lua uses tables for every non-primitive data structure, it is non-trivial to determine if a
|
|
183
191
|
* particular table is being used as an array. `isArray` returns true if:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"array.d.ts","sourceRoot":"","sources":["../../../src/functions/array.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"array.d.ts","sourceRoot":"","sources":["../../../src/functions/array.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,6 +13,7 @@ local __TS__ArraySlice = ____lualib.__TS__ArraySlice
|
|
|
13
13
|
local __TS__SparseArrayNew = ____lualib.__TS__SparseArrayNew
|
|
14
14
|
local __TS__SparseArrayPush = ____lualib.__TS__SparseArrayPush
|
|
15
15
|
local __TS__SparseArraySpread = ____lualib.__TS__SparseArraySpread
|
|
16
|
+
local __TS__ArrayIncludes = ____lualib.__TS__ArrayIncludes
|
|
16
17
|
local __TS__ObjectKeys = ____lualib.__TS__ObjectKeys
|
|
17
18
|
local __TS__ArraySome = ____lualib.__TS__ArraySome
|
|
18
19
|
local __TS__ArrayReduce = ____lualib.__TS__ArrayReduce
|
|
@@ -450,6 +451,14 @@ function ____exports.getRandomArrayElementAndRemove(self, array, seedOrRNG, exce
|
|
|
450
451
|
____exports.arrayRemoveInPlace(nil, array, randomArrayElement)
|
|
451
452
|
return randomArrayElement
|
|
452
453
|
end
|
|
454
|
+
--- Similar to the `Array.includes` method, but works on a widened version of the array.
|
|
455
|
+
--
|
|
456
|
+
-- This is useful when the normal `Array.includes` produces a type error from an array that uses an
|
|
457
|
+
-- `as const` assertion.
|
|
458
|
+
function ____exports.includes(self, haystack, needle)
|
|
459
|
+
local _haystack = haystack
|
|
460
|
+
return __TS__ArrayIncludes(_haystack, needle)
|
|
461
|
+
end
|
|
453
462
|
--- Since Lua uses tables for every non-primitive data structure, it is non-trivial to determine if a
|
|
454
463
|
-- particular table is being used as an array. `isArray` returns true if:
|
|
455
464
|
--
|
|
@@ -33,15 +33,6 @@ export declare function find<T>(array: T[], func: (value: T, index: number, arra
|
|
|
33
33
|
* Internally, this just calls `array.forEach`.
|
|
34
34
|
*/
|
|
35
35
|
export declare function forEach<T>(array: T[], func: (value: T, index: number, array: T[]) => void): void;
|
|
36
|
-
/**
|
|
37
|
-
* Helper function for non-TypeScript users to check if an element is in an array.
|
|
38
|
-
*
|
|
39
|
-
* Since this takes O(N) time, using this function is usually a mistake, since you can use a `Set`
|
|
40
|
-
* data structure to get O(1) lookups.
|
|
41
|
-
*
|
|
42
|
-
* Internally, this just calls `array.includes`.
|
|
43
|
-
*/
|
|
44
|
-
export declare function includes<T>(array: T[], element: T): boolean;
|
|
45
36
|
/**
|
|
46
37
|
* Helper function for non-TypeScript users to convert an array to a string with the specified
|
|
47
38
|
* separator.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"arrayLua.d.ts","sourceRoot":"","sources":["../../../src/functions/arrayLua.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH;;;;;GAKG;AACH,wBAAgB,KAAK,CAAC,CAAC,EACrB,KAAK,EAAE,CAAC,EAAE,EACV,IAAI,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,OAAO,GACrD,OAAO,CAET;AAED;;;;;GAKG;AACH,wBAAgB,MAAM,CAAC,CAAC,EACtB,KAAK,EAAE,CAAC,EAAE,EACV,IAAI,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,OAAO,GACrD,CAAC,EAAE,CAEL;AAED;;;;GAIG;AACH,wBAAgB,IAAI,CAAC,CAAC,EACpB,KAAK,EAAE,CAAC,EAAE,EACV,IAAI,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,OAAO,GACrD,CAAC,GAAG,SAAS,CAEf;AAED;;;;GAIG;AACH,wBAAgB,OAAO,CAAC,CAAC,EACvB,KAAK,EAAE,CAAC,EAAE,EACV,IAAI,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,IAAI,GAClD,IAAI,CAEN;
|
|
1
|
+
{"version":3,"file":"arrayLua.d.ts","sourceRoot":"","sources":["../../../src/functions/arrayLua.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH;;;;;GAKG;AACH,wBAAgB,KAAK,CAAC,CAAC,EACrB,KAAK,EAAE,CAAC,EAAE,EACV,IAAI,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,OAAO,GACrD,OAAO,CAET;AAED;;;;;GAKG;AACH,wBAAgB,MAAM,CAAC,CAAC,EACtB,KAAK,EAAE,CAAC,EAAE,EACV,IAAI,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,OAAO,GACrD,CAAC,EAAE,CAEL;AAED;;;;GAIG;AACH,wBAAgB,IAAI,CAAC,CAAC,EACpB,KAAK,EAAE,CAAC,EAAE,EACV,IAAI,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,OAAO,GACrD,CAAC,GAAG,SAAS,CAEf;AAED;;;;GAIG;AACH,wBAAgB,OAAO,CAAC,CAAC,EACvB,KAAK,EAAE,CAAC,EAAE,EACV,IAAI,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,IAAI,GAClD,IAAI,CAEN;AAID;;;;;GAKG;AACH,wBAAgB,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAE7D;AAED;;;;;GAKG;AACH,wBAAgB,GAAG,CAAC,CAAC,EAAE,CAAC,EACtB,KAAK,EAAE,CAAC,EAAE,EACV,IAAI,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,CAAC,GAC/C,CAAC,EAAE,CAEL;AAED;;;;;GAKG;AACH,wBAAgB,IAAI,CAAC,CAAC,EACpB,KAAK,EAAE,CAAC,EAAE,EACV,IAAI,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,OAAO,GACrD,OAAO,CAET"}
|
|
@@ -3,7 +3,6 @@ local __TS__ArrayEvery = ____lualib.__TS__ArrayEvery
|
|
|
3
3
|
local __TS__ArrayFilter = ____lualib.__TS__ArrayFilter
|
|
4
4
|
local __TS__ArrayFind = ____lualib.__TS__ArrayFind
|
|
5
5
|
local __TS__ArrayForEach = ____lualib.__TS__ArrayForEach
|
|
6
|
-
local __TS__ArrayIncludes = ____lualib.__TS__ArrayIncludes
|
|
7
6
|
local __TS__ArrayJoin = ____lualib.__TS__ArrayJoin
|
|
8
7
|
local __TS__ArrayMap = ____lualib.__TS__ArrayMap
|
|
9
8
|
local __TS__ArraySome = ____lualib.__TS__ArraySome
|
|
@@ -34,15 +33,6 @@ end
|
|
|
34
33
|
function ____exports.forEach(self, array, func)
|
|
35
34
|
__TS__ArrayForEach(array, func)
|
|
36
35
|
end
|
|
37
|
-
--- Helper function for non-TypeScript users to check if an element is in an array.
|
|
38
|
-
--
|
|
39
|
-
-- Since this takes O(N) time, using this function is usually a mistake, since you can use a `Set`
|
|
40
|
-
-- data structure to get O(1) lookups.
|
|
41
|
-
--
|
|
42
|
-
-- Internally, this just calls `array.includes`.
|
|
43
|
-
function ____exports.includes(self, array, element)
|
|
44
|
-
return __TS__ArrayIncludes(array, element)
|
|
45
|
-
end
|
|
46
36
|
--- Helper function for non-TypeScript users to convert an array to a string with the specified
|
|
47
37
|
-- separator.
|
|
48
38
|
--
|
|
@@ -16,8 +16,8 @@ import type { CollectibleType } from "isaac-typescript-definitions";
|
|
|
16
16
|
*
|
|
17
17
|
* Note that calling this function is not normally necessary when removing collectibles from
|
|
18
18
|
* players. For example, when you remove a collectible with the `EntityPlayer.RemoveCollectible`
|
|
19
|
-
* method, a
|
|
20
|
-
* remove it. However, in some cases,
|
|
19
|
+
* method, a message is sent to the log file by the game and the item tracker will automatically
|
|
20
|
+
* remove it. However, in some cases, manually removing collectibles can be useful:
|
|
21
21
|
*
|
|
22
22
|
* - We may be giving the player a "fake" collectible (e.g. 1-Up for the purposes of an extra life)
|
|
23
23
|
* and do not want the fake collectible to show up on the tracker.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"external.d.ts","sourceRoot":"","sources":["../../../src/functions/external.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"external.d.ts","sourceRoot":"","sources":["../../../src/functions/external.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AASpE;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,mCAAmC,CACjD,GAAG,gBAAgB,EAAE,eAAe,EAAE,GACrC,IAAI,CASN;AAED;;;;;;;;;GASG;AACH,wBAAgB,6BAA6B,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAI/D"}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
local ____exports = {}
|
|
2
|
+
local ____collectibles = require("src.functions.collectibles")
|
|
3
|
+
local getCollectibleName = ____collectibles.getCollectibleName
|
|
2
4
|
local REBIRTH_ITEM_TRACKER_REMOVE_COLLECTIBLE_COMMAND = "REBIRTH_ITEM_TRACKER_REMOVE_COLLECTIBLE"
|
|
3
5
|
local REBIRTH_ITEM_TRACKER_WRITE_TO_FILE_COMMAND = "REBIRTH_ITEM_TRACKER_WRITE_TO_FILE"
|
|
4
6
|
--- Helper function to let the Rebirth Item Tracker know that it should remove a collectible from its
|
|
@@ -12,8 +14,8 @@ local REBIRTH_ITEM_TRACKER_WRITE_TO_FILE_COMMAND = "REBIRTH_ITEM_TRACKER_WRITE_T
|
|
|
12
14
|
--
|
|
13
15
|
-- Note that calling this function is not normally necessary when removing collectibles from
|
|
14
16
|
-- players. For example, when you remove a collectible with the `EntityPlayer.RemoveCollectible`
|
|
15
|
-
-- method, a
|
|
16
|
-
-- remove it. However, in some cases,
|
|
17
|
+
-- method, a message is sent to the log file by the game and the item tracker will automatically
|
|
18
|
+
-- remove it. However, in some cases, manually removing collectibles can be useful:
|
|
17
19
|
--
|
|
18
20
|
-- - We may be giving the player a "fake" collectible (e.g. 1-Up for the purposes of an extra life)
|
|
19
21
|
-- and do not want the fake collectible to show up on the tracker.
|
|
@@ -25,7 +27,8 @@ local REBIRTH_ITEM_TRACKER_WRITE_TO_FILE_COMMAND = "REBIRTH_ITEM_TRACKER_WRITE_T
|
|
|
25
27
|
function ____exports.rebirthItemTrackerRemoveCollectible(self, ...)
|
|
26
28
|
local collectibleTypes = {...}
|
|
27
29
|
for ____, collectibleType in ipairs(collectibleTypes) do
|
|
28
|
-
|
|
30
|
+
local collectibleName = getCollectibleName(nil, collectibleType)
|
|
31
|
+
Isaac.DebugString(((((REBIRTH_ITEM_TRACKER_REMOVE_COLLECTIBLE_COMMAND .. " Removing collectible ") .. tostring(collectibleType)) .. " (") .. collectibleName) .. ") on player 0 (Player)")
|
|
29
32
|
end
|
|
30
33
|
end
|
|
31
34
|
--- Helper function to let the Rebirth Item Tracker know that it should write the submitted text
|
package/dist/src/index.d.ts
CHANGED
|
@@ -195,5 +195,6 @@ export * from "./types/TupleWithMaxLength";
|
|
|
195
195
|
export * from "./types/UnionToIntersection";
|
|
196
196
|
export * from "./types/UppercaseKeys";
|
|
197
197
|
export * from "./types/WeightedArray";
|
|
198
|
+
export * from "./types/WidenLiteral";
|
|
198
199
|
export * from "./types/Writable";
|
|
199
200
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/src/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WidenLiteral.d.ts","sourceRoot":"","sources":["../../../src/types/WidenLiteral.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI,CAAC,SAAS,MAAM,GAC1C,MAAM,GACN,CAAC,SAAS,MAAM,GAChB,MAAM,GACN,CAAC,SAAS,OAAO,GACjB,OAAO,GACP,CAAC,SAAS,MAAM,GAChB,MAAM,GACN,CAAC,SAAS,MAAM,GAChB,MAAM,GACN,CAAC,CAAC"}
|
package/package.json
CHANGED
package/src/functions/array.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { ReadonlySet } from "../types/ReadonlySet";
|
|
2
|
+
import type { WidenLiteral } from "../types/WidenLiteral";
|
|
2
3
|
import { getRandomInt } from "./random";
|
|
3
4
|
import { getRandomSeed, isRNG, newRNG } from "./rng";
|
|
4
5
|
import { isNumber, isTable } from "./types";
|
|
@@ -466,6 +467,20 @@ export function getRandomArrayIndex<T>(
|
|
|
466
467
|
return getRandomInt(0, array.length - 1, seedOrRNG, exceptions);
|
|
467
468
|
}
|
|
468
469
|
|
|
470
|
+
/**
|
|
471
|
+
* Similar to the `Array.includes` method, but works on a widened version of the array.
|
|
472
|
+
*
|
|
473
|
+
* This is useful when the normal `Array.includes` produces a type error from an array that uses an
|
|
474
|
+
* `as const` assertion.
|
|
475
|
+
*/
|
|
476
|
+
export function includes<T, S extends WidenLiteral<T>>(
|
|
477
|
+
haystack: readonly S[],
|
|
478
|
+
needle: WidenLiteral<T>,
|
|
479
|
+
): needle is S {
|
|
480
|
+
const _haystack: ReadonlyArray<WidenLiteral<T>> = haystack;
|
|
481
|
+
return _haystack.includes(needle);
|
|
482
|
+
}
|
|
483
|
+
|
|
469
484
|
/**
|
|
470
485
|
* Since Lua uses tables for every non-primitive data structure, it is non-trivial to determine if a
|
|
471
486
|
* particular table is being used as an array. `isArray` returns true if:
|
|
@@ -58,17 +58,7 @@ export function forEach<T>(
|
|
|
58
58
|
array.forEach(func); // eslint-disable-line unicorn/no-array-for-each
|
|
59
59
|
}
|
|
60
60
|
|
|
61
|
-
|
|
62
|
-
* Helper function for non-TypeScript users to check if an element is in an array.
|
|
63
|
-
*
|
|
64
|
-
* Since this takes O(N) time, using this function is usually a mistake, since you can use a `Set`
|
|
65
|
-
* data structure to get O(1) lookups.
|
|
66
|
-
*
|
|
67
|
-
* Internally, this just calls `array.includes`.
|
|
68
|
-
*/
|
|
69
|
-
export function includes<T>(array: T[], element: T): boolean {
|
|
70
|
-
return array.includes(element);
|
|
71
|
-
}
|
|
61
|
+
// `includes` is not included since there is a normal array helper function of that name.
|
|
72
62
|
|
|
73
63
|
/**
|
|
74
64
|
* Helper function for non-TypeScript users to convert an array to a string with the specified
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
7
|
import type { CollectibleType } from "isaac-typescript-definitions";
|
|
8
|
+
import { getCollectibleName } from "./collectibles";
|
|
8
9
|
|
|
9
10
|
const REBIRTH_ITEM_TRACKER_REMOVE_COLLECTIBLE_COMMAND =
|
|
10
11
|
"REBIRTH_ITEM_TRACKER_REMOVE_COLLECTIBLE";
|
|
@@ -24,8 +25,8 @@ const REBIRTH_ITEM_TRACKER_WRITE_TO_FILE_COMMAND =
|
|
|
24
25
|
*
|
|
25
26
|
* Note that calling this function is not normally necessary when removing collectibles from
|
|
26
27
|
* players. For example, when you remove a collectible with the `EntityPlayer.RemoveCollectible`
|
|
27
|
-
* method, a
|
|
28
|
-
* remove it. However, in some cases,
|
|
28
|
+
* method, a message is sent to the log file by the game and the item tracker will automatically
|
|
29
|
+
* remove it. However, in some cases, manually removing collectibles can be useful:
|
|
29
30
|
*
|
|
30
31
|
* - We may be giving the player a "fake" collectible (e.g. 1-Up for the purposes of an extra life)
|
|
31
32
|
* and do not want the fake collectible to show up on the tracker.
|
|
@@ -41,8 +42,9 @@ export function rebirthItemTrackerRemoveCollectible(
|
|
|
41
42
|
for (const collectibleType of collectibleTypes) {
|
|
42
43
|
// This cannot use the "log" function since the prefix will prevent the Rebirth Item Tracker
|
|
43
44
|
// from recognizing the message.
|
|
45
|
+
const collectibleName = getCollectibleName(collectibleType);
|
|
44
46
|
Isaac.DebugString(
|
|
45
|
-
`${REBIRTH_ITEM_TRACKER_REMOVE_COLLECTIBLE_COMMAND} ${collectibleType}`,
|
|
47
|
+
`${REBIRTH_ITEM_TRACKER_REMOVE_COLLECTIBLE_COMMAND} Removing collectible ${collectibleType} (${collectibleName}) on player 0 (Player)`,
|
|
46
48
|
);
|
|
47
49
|
}
|
|
48
50
|
}
|
package/src/index.ts
CHANGED