isaacscript-common 7.13.0 → 7.14.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.
@@ -1 +1 @@
1
- {"version":3,"file":"collectibleSet.d.ts","sourceRoot":"","sources":["../../src/functions/collectibleSet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAuD/D;;;;;;GAMG;AACH,wBAAgB,mBAAmB,IAAI,SAAS,eAAe,EAAE,CAKhE;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,IAAI,WAAW,CAAC,eAAe,CAAC,CAKhE;AAED;;;;;GAKG;AACH,wBAAgB,yBAAyB,IAAI,SAAS,eAAe,EAAE,CAKtE;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,IAAI,WAAW,CAAC,eAAe,CAAC,CAKtE;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,IAAI,SAAS,eAAe,EAAE,CAKvE;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,IAAI,WAAW,CAAC,eAAe,CAAC,CAKvE"}
1
+ {"version":3,"file":"collectibleSet.d.ts","sourceRoot":"","sources":["../../src/functions/collectibleSet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAwD/D;;;;;;GAMG;AACH,wBAAgB,mBAAmB,IAAI,SAAS,eAAe,EAAE,CAKhE;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,IAAI,WAAW,CAAC,eAAe,CAAC,CAKhE;AAED;;;;;GAKG;AACH,wBAAgB,yBAAyB,IAAI,SAAS,eAAe,EAAE,CAKtE;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,IAAI,WAAW,CAAC,eAAe,CAAC,CAKtE;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,IAAI,SAAS,eAAe,EAAE,CAKvE;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,IAAI,WAAW,CAAC,eAAe,CAAC,CAKvE"}
@@ -38,14 +38,14 @@ local function initCollectibleArraysAndSets(self)
38
38
  ::__continue4::
39
39
  end
40
40
  __TS__ArraySort(ALL_COLLECTIBLES_ARRAY)
41
- __TS__ArraySort(VANILLA_COLLECTIBLES_ARRAY)
42
- __TS__ArraySort(MODDED_COLLECTIBLES_ARRAY)
43
41
  for ____, collectibleType in ipairs(ALL_COLLECTIBLES_ARRAY) do
44
42
  ALL_COLLECTIBLES_SET:add(collectibleType)
45
43
  end
44
+ __TS__ArraySort(VANILLA_COLLECTIBLES_ARRAY)
46
45
  for ____, collectibleType in ipairs(VANILLA_COLLECTIBLES_ARRAY) do
47
46
  VANILLA_COLLECTIBLES_SET:add(collectibleType)
48
47
  end
48
+ __TS__ArraySort(MODDED_COLLECTIBLES_ARRAY)
49
49
  for ____, collectibleType in ipairs(MODDED_COLLECTIBLES_ARRAY) do
50
50
  MODDED_COLLECTIBLES_SET:add(collectibleType)
51
51
  end
@@ -0,0 +1,44 @@
1
+ import { TrinketType } from "isaac-typescript-definitions";
2
+ /**
3
+ * Returns an array containing every valid trinket type in the game, including modded trinkets.
4
+ *
5
+ * Use this if you need to iterate over the trinkets in order. If you need to do O(1) lookups, then
6
+ * use the `getTrinketSet` helper function instead.
7
+ */
8
+ export declare function getModdedTrinketArray(): readonly TrinketType[];
9
+ /**
10
+ * Returns a set containing every valid trinket type in the game, including modded trinkets.
11
+ *
12
+ * Use this if you need to do O(1) lookups. If you need to iterate over the trinkets in order, then
13
+ * use the `getTrinketArray` helper function instead.
14
+ */
15
+ export declare function getModdedTrinketSet(): ReadonlySet<TrinketType>;
16
+ /**
17
+ * Returns an array containing every modded trinket type in the game.
18
+ *
19
+ * Use this if you need to iterate over the trinkets in order. If you need to do O(1) lookups, then
20
+ * use the `getModdedTrinketSet` helper function instead.
21
+ */
22
+ export declare function getTrinketArray(): readonly TrinketType[];
23
+ /**
24
+ * Returns a set containing every modded trinket type in the game.
25
+ *
26
+ * Use this if you need to do O(1) lookups. If you need to iterate over the trinkets in order, then
27
+ * use the `getModdedTrinketArray` helper function instead.
28
+ */
29
+ export declare function getTrinketSet(): ReadonlySet<TrinketType>;
30
+ /**
31
+ * Returns an array containing every valid vanilla trinket type in the game.
32
+ *
33
+ * Use this if you need to iterate over the trinkets in order. If you need to do O(1) lookups, then
34
+ * use the `getVanillaTrinketSet` helper function instead.
35
+ */
36
+ export declare function getVanillaTrinketArray(): readonly TrinketType[];
37
+ /**
38
+ * Returns a set containing every valid vanilla trinket type in the game.
39
+ *
40
+ * Use this if you need to do O(1) lookups. If you need to iterate over the trinkets in order, then
41
+ * use the `getVanillaTrinketArray` helper function instead.
42
+ */
43
+ export declare function getVanillaTrinketSet(): ReadonlySet<TrinketType>;
44
+ //# sourceMappingURL=trinketSet.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"trinketSet.d.ts","sourceRoot":"","sources":["../../src/functions/trinketSet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAwD3D;;;;;GAKG;AACH,wBAAgB,qBAAqB,IAAI,SAAS,WAAW,EAAE,CAK9D;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,IAAI,WAAW,CAAC,WAAW,CAAC,CAK9D;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,IAAI,SAAS,WAAW,EAAE,CAKxD;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,IAAI,WAAW,CAAC,WAAW,CAAC,CAKxD;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,IAAI,SAAS,WAAW,EAAE,CAK/D;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,IAAI,WAAW,CAAC,WAAW,CAAC,CAK/D"}
@@ -0,0 +1,101 @@
1
+ local ____lualib = require("lualib_bundle")
2
+ local Set = ____lualib.Set
3
+ local __TS__New = ____lualib.__TS__New
4
+ local __TS__ArraySort = ____lualib.__TS__ArraySort
5
+ local ____exports = {}
6
+ local ____cachedClasses = require("core.cachedClasses")
7
+ local itemConfig = ____cachedClasses.itemConfig
8
+ local ____constantsFirstLast = require("core.constantsFirstLast")
9
+ local FIRST_TRINKET_TYPE = ____constantsFirstLast.FIRST_TRINKET_TYPE
10
+ local LAST_TRINKET_TYPE = ____constantsFirstLast.LAST_TRINKET_TYPE
11
+ local LAST_VANILLA_TRINKET_TYPE = ____constantsFirstLast.LAST_VANILLA_TRINKET_TYPE
12
+ local ____utils = require("functions.utils")
13
+ local irange = ____utils.irange
14
+ local ALL_TRINKETS_ARRAY = {}
15
+ local VANILLA_TRINKETS_ARRAY = {}
16
+ local MODDED_TRINKETS_ARRAY = {}
17
+ local ALL_TRINKETS_SET = __TS__New(Set)
18
+ local VANILLA_TRINKETS_SET = __TS__New(Set)
19
+ local MODDED_TRINKETS_SET = __TS__New(Set)
20
+ local function initTrinketArraysAndSets(self)
21
+ if #ALL_TRINKETS_ARRAY ~= 0 then
22
+ return
23
+ end
24
+ local trinketTypeRange = irange(nil, FIRST_TRINKET_TYPE, LAST_TRINKET_TYPE)
25
+ for ____, trinketType in ipairs(trinketTypeRange) do
26
+ do
27
+ local itemConfigItem = itemConfig:GetTrinket(trinketType)
28
+ if itemConfigItem == nil then
29
+ goto __continue4
30
+ end
31
+ ALL_TRINKETS_ARRAY[#ALL_TRINKETS_ARRAY + 1] = trinketType
32
+ if trinketType <= LAST_VANILLA_TRINKET_TYPE then
33
+ VANILLA_TRINKETS_ARRAY[#VANILLA_TRINKETS_ARRAY + 1] = trinketType
34
+ else
35
+ MODDED_TRINKETS_ARRAY[#MODDED_TRINKETS_ARRAY + 1] = trinketType
36
+ end
37
+ end
38
+ ::__continue4::
39
+ end
40
+ __TS__ArraySort(ALL_TRINKETS_ARRAY)
41
+ for ____, trinketType in ipairs(ALL_TRINKETS_ARRAY) do
42
+ ALL_TRINKETS_SET:add(trinketType)
43
+ end
44
+ __TS__ArraySort(VANILLA_TRINKETS_ARRAY)
45
+ for ____, trinketType in ipairs(VANILLA_TRINKETS_ARRAY) do
46
+ VANILLA_TRINKETS_SET:add(trinketType)
47
+ end
48
+ __TS__ArraySort(MODDED_TRINKETS_ARRAY)
49
+ for ____, trinketType in ipairs(MODDED_TRINKETS_ARRAY) do
50
+ MODDED_TRINKETS_SET:add(trinketType)
51
+ end
52
+ end
53
+ --- Returns an array containing every valid trinket type in the game, including modded trinkets.
54
+ --
55
+ -- Use this if you need to iterate over the trinkets in order. If you need to do O(1) lookups, then
56
+ -- use the `getTrinketSet` helper function instead.
57
+ function ____exports.getModdedTrinketArray(self)
58
+ initTrinketArraysAndSets(nil)
59
+ return MODDED_TRINKETS_ARRAY
60
+ end
61
+ --- Returns a set containing every valid trinket type in the game, including modded trinkets.
62
+ --
63
+ -- Use this if you need to do O(1) lookups. If you need to iterate over the trinkets in order, then
64
+ -- use the `getTrinketArray` helper function instead.
65
+ function ____exports.getModdedTrinketSet(self)
66
+ initTrinketArraysAndSets(nil)
67
+ return MODDED_TRINKETS_SET
68
+ end
69
+ --- Returns an array containing every modded trinket type in the game.
70
+ --
71
+ -- Use this if you need to iterate over the trinkets in order. If you need to do O(1) lookups, then
72
+ -- use the `getModdedTrinketSet` helper function instead.
73
+ function ____exports.getTrinketArray(self)
74
+ initTrinketArraysAndSets(nil)
75
+ return ALL_TRINKETS_ARRAY
76
+ end
77
+ --- Returns a set containing every modded trinket type in the game.
78
+ --
79
+ -- Use this if you need to do O(1) lookups. If you need to iterate over the trinkets in order, then
80
+ -- use the `getModdedTrinketArray` helper function instead.
81
+ function ____exports.getTrinketSet(self)
82
+ initTrinketArraysAndSets(nil)
83
+ return ALL_TRINKETS_SET
84
+ end
85
+ --- Returns an array containing every valid vanilla trinket type in the game.
86
+ --
87
+ -- Use this if you need to iterate over the trinkets in order. If you need to do O(1) lookups, then
88
+ -- use the `getVanillaTrinketSet` helper function instead.
89
+ function ____exports.getVanillaTrinketArray(self)
90
+ initTrinketArraysAndSets(nil)
91
+ return VANILLA_TRINKETS_ARRAY
92
+ end
93
+ --- Returns a set containing every valid vanilla trinket type in the game.
94
+ --
95
+ -- Use this if you need to do O(1) lookups. If you need to iterate over the trinkets in order, then
96
+ -- use the `getVanillaTrinketArray` helper function instead.
97
+ function ____exports.getVanillaTrinketSet(self)
98
+ initTrinketArraysAndSets(nil)
99
+ return VANILLA_TRINKETS_SET
100
+ end
101
+ return ____exports
package/dist/index.d.ts CHANGED
@@ -140,6 +140,7 @@ export * from "./functions/transformations";
140
140
  export * from "./functions/trinketCacheFlag";
141
141
  export * from "./functions/trinketGive";
142
142
  export * from "./functions/trinkets";
143
+ export * from "./functions/trinketSet";
143
144
  export * from "./functions/tstlClass";
144
145
  export * from "./functions/types";
145
146
  export * from "./functions/ui";
@@ -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":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,kBAAkB,CAAC;AACjC,OAAO,EACL,sBAAsB,EACtB,iCAAiC,GAClC,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,EAAE,0BAA0B,EAAE,MAAM,oCAAoC,CAAC;AAChF,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxE,OAAO,EACL,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC/D,cAAc,gCAAgC,CAAC;AAC/C,cAAc,mCAAmC,CAAC;AAClD,cAAc,iCAAiC,CAAC;AAChD,OAAO,EACL,cAAc,EACd,oBAAoB,EACpB,SAAS,GACV,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC7E,OAAO,EACL,gBAAgB,EAChB,yBAAyB,EACzB,qBAAqB,EACrB,qBAAqB,EACrB,eAAe,EACf,wBAAwB,GACzB,MAAM,0BAA0B,CAAC;AAClC,cAAc,yCAAyC,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EACL,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,+BAA+B,CAAC;AACvC,cAAc,wBAAwB,CAAC;AACvC,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EACL,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,EAAE,0BAA0B,EAAE,MAAM,uCAAuC,CAAC;AACnF,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7E,OAAO,EACL,qBAAqB,EACrB,qBAAqB,GACtB,MAAM,2BAA2B,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,OAAO,EACL,gBAAgB,EAChB,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,EAClB,qBAAqB,EACrB,uBAAuB,GACxB,MAAM,yBAAyB,CAAC;AACjC,cAAc,oCAAoC,CAAC;AACnD,OAAO,EACL,sBAAsB,EACtB,uBAAuB,GACxB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC3E,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAC9E,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC;AACrC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,yBAAyB,CAAC;AACxC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,0BAA0B,CAAC;AACzC,cAAc,kCAAkC,CAAC;AACjD,cAAc,mBAAmB,CAAC;AAClC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,yBAAyB,CAAC;AACxC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,mBAAmB,CAAC;AAClC,cAAc,0BAA0B,CAAC;AACzC,cAAc,kCAAkC,CAAC;AACjD,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yBAAyB,CAAC;AACxC,cAAc,oBAAoB,CAAC;AACnC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,oBAAoB,CAAC;AACnC,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,iBAAiB,CAAC;AAChC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qBAAqB,CAAC;AACpC,cAAc,kCAAkC,CAAC;AACjD,cAAc,mCAAmC,CAAC;AAClD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,oCAAoC,CAAC;AACnD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,uBAAuB,CAAC;AACtC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,0BAA0B,CAAC;AACzC,cAAc,iCAAiC,CAAC;AAChD,cAAc,mBAAmB,CAAC"}
package/dist/index.lua CHANGED
@@ -1111,6 +1111,14 @@ do
1111
1111
  end
1112
1112
  end
1113
1113
  end
1114
+ do
1115
+ local ____export = require("functions.trinketSet")
1116
+ for ____exportKey, ____exportValue in pairs(____export) do
1117
+ if ____exportKey ~= "default" then
1118
+ ____exports[____exportKey] = ____exportValue
1119
+ end
1120
+ end
1121
+ end
1114
1122
  do
1115
1123
  local ____export = require("functions.tstlClass")
1116
1124
  for ____exportKey, ____exportValue in pairs(____export) do
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "isaacscript-common",
3
- "version": "7.13.0",
3
+ "version": "7.14.0",
4
4
  "description": "Helper functions and features for IsaacScript mods.",
5
5
  "keywords": [
6
6
  "isaac",
@@ -39,15 +39,16 @@ function initCollectibleArraysAndSets() {
39
39
  }
40
40
 
41
41
  ALL_COLLECTIBLES_ARRAY.sort();
42
- VANILLA_COLLECTIBLES_ARRAY.sort();
43
- MODDED_COLLECTIBLES_ARRAY.sort();
44
-
45
42
  for (const collectibleType of ALL_COLLECTIBLES_ARRAY) {
46
43
  ALL_COLLECTIBLES_SET.add(collectibleType);
47
44
  }
45
+
46
+ VANILLA_COLLECTIBLES_ARRAY.sort();
48
47
  for (const collectibleType of VANILLA_COLLECTIBLES_ARRAY) {
49
48
  VANILLA_COLLECTIBLES_SET.add(collectibleType);
50
49
  }
50
+
51
+ MODDED_COLLECTIBLES_ARRAY.sort();
51
52
  for (const collectibleType of MODDED_COLLECTIBLES_ARRAY) {
52
53
  MODDED_COLLECTIBLES_SET.add(collectibleType);
53
54
  }
@@ -0,0 +1,133 @@
1
+ import { TrinketType } from "isaac-typescript-definitions";
2
+ import { itemConfig } from "../core/cachedClasses";
3
+ import {
4
+ FIRST_TRINKET_TYPE,
5
+ LAST_TRINKET_TYPE,
6
+ LAST_VANILLA_TRINKET_TYPE,
7
+ } from "../core/constantsFirstLast";
8
+ import { irange } from "./utils";
9
+
10
+ const ALL_TRINKETS_ARRAY: TrinketType[] = [];
11
+ const VANILLA_TRINKETS_ARRAY: TrinketType[] = [];
12
+ const MODDED_TRINKETS_ARRAY: TrinketType[] = [];
13
+
14
+ const ALL_TRINKETS_SET = new Set<TrinketType>();
15
+ const VANILLA_TRINKETS_SET = new Set<TrinketType>();
16
+ const MODDED_TRINKETS_SET = new Set<TrinketType>();
17
+
18
+ function initTrinketArraysAndSets() {
19
+ if (ALL_TRINKETS_ARRAY.length !== 0) {
20
+ return;
21
+ }
22
+
23
+ const trinketTypeRange = irange(
24
+ FIRST_TRINKET_TYPE,
25
+ LAST_TRINKET_TYPE,
26
+ ) as TrinketType[];
27
+ for (const trinketType of trinketTypeRange) {
28
+ const itemConfigItem = itemConfig.GetTrinket(trinketType);
29
+ if (itemConfigItem === undefined) {
30
+ continue;
31
+ }
32
+
33
+ ALL_TRINKETS_ARRAY.push(trinketType);
34
+ if (trinketType <= LAST_VANILLA_TRINKET_TYPE) {
35
+ VANILLA_TRINKETS_ARRAY.push(trinketType);
36
+ } else {
37
+ MODDED_TRINKETS_ARRAY.push(trinketType);
38
+ }
39
+ }
40
+
41
+ ALL_TRINKETS_ARRAY.sort();
42
+ for (const trinketType of ALL_TRINKETS_ARRAY) {
43
+ ALL_TRINKETS_SET.add(trinketType);
44
+ }
45
+
46
+ VANILLA_TRINKETS_ARRAY.sort();
47
+ for (const trinketType of VANILLA_TRINKETS_ARRAY) {
48
+ VANILLA_TRINKETS_SET.add(trinketType);
49
+ }
50
+
51
+ MODDED_TRINKETS_ARRAY.sort();
52
+ for (const trinketType of MODDED_TRINKETS_ARRAY) {
53
+ MODDED_TRINKETS_SET.add(trinketType);
54
+ }
55
+ }
56
+
57
+ /**
58
+ * Returns an array containing every valid trinket type in the game, including modded trinkets.
59
+ *
60
+ * Use this if you need to iterate over the trinkets in order. If you need to do O(1) lookups, then
61
+ * use the `getTrinketSet` helper function instead.
62
+ */
63
+ export function getModdedTrinketArray(): readonly TrinketType[] {
64
+ // Lazy initialize the arrays/sets.
65
+ initTrinketArraysAndSets();
66
+
67
+ return MODDED_TRINKETS_ARRAY;
68
+ }
69
+
70
+ /**
71
+ * Returns a set containing every valid trinket type in the game, including modded trinkets.
72
+ *
73
+ * Use this if you need to do O(1) lookups. If you need to iterate over the trinkets in order, then
74
+ * use the `getTrinketArray` helper function instead.
75
+ */
76
+ export function getModdedTrinketSet(): ReadonlySet<TrinketType> {
77
+ // Lazy initialize the arrays/sets.
78
+ initTrinketArraysAndSets();
79
+
80
+ return MODDED_TRINKETS_SET;
81
+ }
82
+
83
+ /**
84
+ * Returns an array containing every modded trinket type in the game.
85
+ *
86
+ * Use this if you need to iterate over the trinkets in order. If you need to do O(1) lookups, then
87
+ * use the `getModdedTrinketSet` helper function instead.
88
+ */
89
+ export function getTrinketArray(): readonly TrinketType[] {
90
+ // Lazy initialize the arrays/sets.
91
+ initTrinketArraysAndSets();
92
+
93
+ return ALL_TRINKETS_ARRAY;
94
+ }
95
+
96
+ /**
97
+ * Returns a set containing every modded trinket type in the game.
98
+ *
99
+ * Use this if you need to do O(1) lookups. If you need to iterate over the trinkets in order, then
100
+ * use the `getModdedTrinketArray` helper function instead.
101
+ */
102
+ export function getTrinketSet(): ReadonlySet<TrinketType> {
103
+ // Lazy initialize the arrays/sets.
104
+ initTrinketArraysAndSets();
105
+
106
+ return ALL_TRINKETS_SET;
107
+ }
108
+
109
+ /**
110
+ * Returns an array containing every valid vanilla trinket type in the game.
111
+ *
112
+ * Use this if you need to iterate over the trinkets in order. If you need to do O(1) lookups, then
113
+ * use the `getVanillaTrinketSet` helper function instead.
114
+ */
115
+ export function getVanillaTrinketArray(): readonly TrinketType[] {
116
+ // Lazy initialize the arrays/sets.
117
+ initTrinketArraysAndSets();
118
+
119
+ return VANILLA_TRINKETS_ARRAY;
120
+ }
121
+
122
+ /**
123
+ * Returns a set containing every valid vanilla trinket type in the game.
124
+ *
125
+ * Use this if you need to do O(1) lookups. If you need to iterate over the trinkets in order, then
126
+ * use the `getVanillaTrinketArray` helper function instead.
127
+ */
128
+ export function getVanillaTrinketSet(): ReadonlySet<TrinketType> {
129
+ // Lazy initialize the arrays/sets.
130
+ initTrinketArraysAndSets();
131
+
132
+ return VANILLA_TRINKETS_SET;
133
+ }
package/src/index.ts CHANGED
@@ -176,6 +176,7 @@ export * from "./functions/transformations";
176
176
  export * from "./functions/trinketCacheFlag";
177
177
  export * from "./functions/trinketGive";
178
178
  export * from "./functions/trinkets";
179
+ export * from "./functions/trinketSet";
179
180
  export * from "./functions/tstlClass";
180
181
  export * from "./functions/types";
181
182
  export * from "./functions/ui";