isaacscript-common 6.12.0 → 6.15.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 (78) hide show
  1. package/dist/enums/private/SerializationBrand.d.ts +1 -1
  2. package/dist/enums/private/SerializationBrand.lua +1 -1
  3. package/dist/features/collectibleItemPoolType.d.ts +2 -2
  4. package/dist/features/collectibleItemPoolType.lua +2 -2
  5. package/dist/features/customGridEntity.d.ts +2 -2
  6. package/dist/features/customGridEntity.lua +2 -2
  7. package/dist/features/customTrapdoor/blackSprite.d.ts.map +1 -1
  8. package/dist/features/customTrapdoor/blackSprite.lua +6 -6
  9. package/dist/features/extraConsoleCommands/exports.d.ts +4 -3
  10. package/dist/features/extraConsoleCommands/exports.d.ts.map +1 -1
  11. package/dist/features/extraConsoleCommands/exports.lua +4 -3
  12. package/dist/features/extraConsoleCommands/init.lua +12 -14
  13. package/dist/features/extraConsoleCommands/listCommands.d.ts +15 -19
  14. package/dist/features/extraConsoleCommands/listCommands.d.ts.map +1 -1
  15. package/dist/features/extraConsoleCommands/listCommands.lua +30 -38
  16. package/dist/functions/collectibles.d.ts +6 -2
  17. package/dist/functions/collectibles.d.ts.map +1 -1
  18. package/dist/functions/collectibles.lua +4 -2
  19. package/dist/functions/color.d.ts +10 -0
  20. package/dist/functions/color.d.ts.map +1 -1
  21. package/dist/functions/color.lua +24 -0
  22. package/dist/functions/gridEntities.d.ts +2 -20
  23. package/dist/functions/gridEntities.d.ts.map +1 -1
  24. package/dist/functions/gridEntities.lua +2 -59
  25. package/dist/functions/itemPool.d.ts +10 -0
  26. package/dist/functions/itemPool.d.ts.map +1 -0
  27. package/dist/functions/itemPool.lua +116 -0
  28. package/dist/functions/kColor.d.ts +10 -0
  29. package/dist/functions/kColor.d.ts.map +1 -1
  30. package/dist/functions/kColor.lua +24 -0
  31. package/dist/functions/map.d.ts +2 -0
  32. package/dist/functions/map.d.ts.map +1 -1
  33. package/dist/functions/map.lua +7 -0
  34. package/dist/functions/npcs.d.ts +2 -2
  35. package/dist/functions/npcs.lua +2 -2
  36. package/dist/functions/random.d.ts +1 -1
  37. package/dist/functions/random.lua +1 -1
  38. package/dist/functions/rockAlt.d.ts +24 -0
  39. package/dist/functions/rockAlt.d.ts.map +1 -0
  40. package/dist/functions/rockAlt.lua +285 -0
  41. package/dist/functions/saveFile.d.ts +8 -7
  42. package/dist/functions/saveFile.d.ts.map +1 -1
  43. package/dist/functions/saveFile.lua +10 -96
  44. package/dist/functions/set.d.ts +2 -0
  45. package/dist/functions/set.d.ts.map +1 -1
  46. package/dist/functions/set.lua +6 -0
  47. package/dist/functions/trinketGive.d.ts +13 -0
  48. package/dist/functions/trinketGive.d.ts.map +1 -1
  49. package/dist/functions/trinketGive.lua +16 -0
  50. package/dist/functions/vector.d.ts +11 -0
  51. package/dist/functions/vector.d.ts.map +1 -1
  52. package/dist/functions/vector.lua +23 -0
  53. package/dist/index.d.ts +2 -0
  54. package/dist/index.d.ts.map +1 -1
  55. package/dist/index.lua +16 -0
  56. package/package.json +2 -2
  57. package/src/callbacks/postPickupInitFirst.ts +2 -0
  58. package/src/enums/private/SerializationBrand.ts +1 -1
  59. package/src/features/collectibleItemPoolType.ts +3 -3
  60. package/src/features/customGridEntity.ts +2 -2
  61. package/src/features/customTrapdoor/blackSprite.ts +11 -5
  62. package/src/features/extraConsoleCommands/exports.ts +4 -3
  63. package/src/features/extraConsoleCommands/init.ts +18 -14
  64. package/src/features/extraConsoleCommands/listCommands.ts +33 -36
  65. package/src/functions/collectibles.ts +6 -2
  66. package/src/functions/color.ts +22 -0
  67. package/src/functions/gridEntities.ts +2 -54
  68. package/src/functions/itemPool.ts +153 -0
  69. package/src/functions/kColor.ts +22 -0
  70. package/src/functions/map.ts +10 -0
  71. package/src/functions/npcs.ts +2 -2
  72. package/src/functions/random.ts +1 -1
  73. package/src/functions/rockAlt.ts +309 -0
  74. package/src/functions/saveFile.ts +13 -119
  75. package/src/functions/set.ts +7 -1
  76. package/src/functions/trinketGive.ts +21 -0
  77. package/src/functions/vector.ts +23 -0
  78. package/src/index.ts +2 -0
@@ -0,0 +1,285 @@
1
+ local ____exports = {}
2
+ local spawnRockAltRewardUrn, spawnRockAltRewardMushroom, spawnRockAltRewardSkull, spawnRockAltRewardPolyp, spawnRockAltRewardBucket
3
+ local ____isaac_2Dtypescript_2Ddefinitions = require("isaac-typescript-definitions")
4
+ local Card = ____isaac_2Dtypescript_2Ddefinitions.Card
5
+ local CoinSubType = ____isaac_2Dtypescript_2Ddefinitions.CoinSubType
6
+ local CollectibleType = ____isaac_2Dtypescript_2Ddefinitions.CollectibleType
7
+ local EffectVariant = ____isaac_2Dtypescript_2Ddefinitions.EffectVariant
8
+ local EntityType = ____isaac_2Dtypescript_2Ddefinitions.EntityType
9
+ local HeartSubType = ____isaac_2Dtypescript_2Ddefinitions.HeartSubType
10
+ local ItemPoolType = ____isaac_2Dtypescript_2Ddefinitions.ItemPoolType
11
+ local PillColor = ____isaac_2Dtypescript_2Ddefinitions.PillColor
12
+ local RoomType = ____isaac_2Dtypescript_2Ddefinitions.RoomType
13
+ local TrinketType = ____isaac_2Dtypescript_2Ddefinitions.TrinketType
14
+ local ____cachedClasses = require("cachedClasses")
15
+ local game = ____cachedClasses.game
16
+ local ____constants = require("constants")
17
+ local DISTANCE_OF_GRID_TILE = ____constants.DISTANCE_OF_GRID_TILE
18
+ local ____RockAltType = require("enums.RockAltType")
19
+ local RockAltType = ____RockAltType.RockAltType
20
+ local ____entitiesSpecific = require("functions.entitiesSpecific")
21
+ local spawnEffectWithSeed = ____entitiesSpecific.spawnEffectWithSeed
22
+ local spawnNPCWithSeed = ____entitiesSpecific.spawnNPCWithSeed
23
+ local ____itemPool = require("functions.itemPool")
24
+ local isCollectibleInItemPool = ____itemPool.isCollectibleInItemPool
25
+ local ____pickupsSpecific = require("functions.pickupsSpecific")
26
+ local spawnCardWithSeed = ____pickupsSpecific.spawnCardWithSeed
27
+ local spawnCoinWithSeed = ____pickupsSpecific.spawnCoinWithSeed
28
+ local spawnHeartWithSeed = ____pickupsSpecific.spawnHeartWithSeed
29
+ local spawnPillWithSeed = ____pickupsSpecific.spawnPillWithSeed
30
+ local spawnTrinketWithSeed = ____pickupsSpecific.spawnTrinketWithSeed
31
+ local ____random = require("functions.random")
32
+ local getRandom = ____random.getRandom
33
+ local ____rng = require("functions.rng")
34
+ local getRandomSeed = ____rng.getRandomSeed
35
+ local isRNG = ____rng.isRNG
36
+ local newRNG = ____rng.newRNG
37
+ local ____spawnCollectible = require("functions.spawnCollectible")
38
+ local spawnCollectible = ____spawnCollectible.spawnCollectible
39
+ local ____utils = require("functions.utils")
40
+ local ____repeat = ____utils["repeat"]
41
+ local ____vector = require("functions.vector")
42
+ local getRandomVector = ____vector.getRandomVector
43
+ function spawnRockAltRewardUrn(self, position, rng)
44
+ local chance = getRandom(nil, rng)
45
+ local totalChance = 0
46
+ totalChance = totalChance + 0.68
47
+ if chance < totalChance then
48
+ return false
49
+ end
50
+ totalChance = totalChance + 0.0944
51
+ if chance < totalChance then
52
+ local numCoinsChance = getRandom(nil, rng)
53
+ local numCoins = numCoinsChance < 0.5 and 1 or 2
54
+ local length = DISTANCE_OF_GRID_TILE
55
+ ____repeat(
56
+ nil,
57
+ numCoins,
58
+ function()
59
+ local randomVector = getRandomVector(nil, rng)
60
+ local velocity = randomVector * length
61
+ spawnCoinWithSeed(
62
+ nil,
63
+ CoinSubType.NULL,
64
+ position,
65
+ rng,
66
+ velocity
67
+ )
68
+ end
69
+ )
70
+ return true
71
+ end
72
+ totalChance = totalChance + 0.025
73
+ if chance < totalChance then
74
+ spawnTrinketWithSeed(nil, TrinketType.SWALLOWED_PENNY, position, rng)
75
+ return true
76
+ end
77
+ totalChance = totalChance + 0.005
78
+ if chance < totalChance then
79
+ local stillInPools = isCollectibleInItemPool(nil, CollectibleType.QUARTER, ItemPoolType.DEVIL)
80
+ if stillInPools then
81
+ spawnCollectible(nil, CollectibleType.QUARTER, position, rng)
82
+ return true
83
+ end
84
+ return false
85
+ end
86
+ local numSpidersChance = getRandom(nil, rng)
87
+ local numSpiders = numSpidersChance < 0.5 and 1 or 2
88
+ local length = DISTANCE_OF_GRID_TILE * 3
89
+ ____repeat(
90
+ nil,
91
+ numSpiders,
92
+ function()
93
+ local randomVector = getRandomVector(nil, rng)
94
+ local offset = randomVector * length
95
+ local targetPos = position + offset
96
+ EntityNPC.ThrowSpider(
97
+ position,
98
+ nil,
99
+ targetPos,
100
+ false,
101
+ 0
102
+ )
103
+ end
104
+ )
105
+ return true
106
+ end
107
+ function spawnRockAltRewardMushroom(self, position, rng)
108
+ local room = game:GetRoom()
109
+ local roomType = room:GetType()
110
+ local chance = getRandom(nil, rng)
111
+ local totalChance = 0
112
+ totalChance = totalChance + 0.68
113
+ if chance < totalChance then
114
+ return false
115
+ end
116
+ totalChance = totalChance + 0.0982
117
+ if chance < totalChance then
118
+ spawnPillWithSeed(nil, PillColor.NULL, position, rng)
119
+ return true
120
+ end
121
+ totalChance = totalChance + 0.025
122
+ if chance < totalChance then
123
+ spawnTrinketWithSeed(nil, TrinketType.LIBERTY_CAP, position, rng)
124
+ return true
125
+ end
126
+ totalChance = totalChance + 0.005
127
+ if chance < totalChance then
128
+ if roomType == RoomType.SECRET then
129
+ local wavyCapChance = getRandom(nil, rng)
130
+ if wavyCapChance < 0.0272 then
131
+ local stillInPools = isCollectibleInItemPool(nil, CollectibleType.WAVY_CAP, ItemPoolType.SECRET)
132
+ if stillInPools then
133
+ spawnCollectible(nil, CollectibleType.WAVY_CAP, position, rng)
134
+ return true
135
+ end
136
+ end
137
+ end
138
+ local magicMushroomStillInPools = isCollectibleInItemPool(nil, CollectibleType.MAGIC_MUSHROOM, ItemPoolType.TREASURE)
139
+ local miniMushStillInPools = isCollectibleInItemPool(nil, CollectibleType.MINI_MUSH, ItemPoolType.TREASURE)
140
+ if magicMushroomStillInPools and miniMushStillInPools then
141
+ local collectibleChance = getRandom(nil, rng)
142
+ local collectibleType = collectibleChance < 0.5 and CollectibleType.MAGIC_MUSHROOM or CollectibleType.MINI_MUSH
143
+ spawnCollectible(nil, collectibleType, position, rng)
144
+ return true
145
+ end
146
+ if magicMushroomStillInPools then
147
+ spawnCollectible(nil, CollectibleType.MINI_MUSH, position, rng)
148
+ return true
149
+ end
150
+ if miniMushStillInPools then
151
+ spawnCollectible(nil, CollectibleType.MAGIC_MUSHROOM, position, rng)
152
+ return true
153
+ end
154
+ return false
155
+ end
156
+ spawnEffectWithSeed(
157
+ nil,
158
+ EffectVariant.FART,
159
+ 0,
160
+ position,
161
+ rng
162
+ )
163
+ return true
164
+ end
165
+ function spawnRockAltRewardSkull(self, position, rng)
166
+ local chance = getRandom(nil, rng)
167
+ local totalChance = 0
168
+ totalChance = totalChance + 0.68
169
+ if chance < totalChance then
170
+ return false
171
+ end
172
+ totalChance = totalChance + 0.095
173
+ if chance < totalChance then
174
+ spawnCardWithSeed(nil, Card.NULL, position, rng)
175
+ return true
176
+ end
177
+ totalChance = totalChance + 0.025
178
+ if chance < totalChance then
179
+ spawnHeartWithSeed(nil, HeartSubType.BLACK, position, rng)
180
+ return true
181
+ end
182
+ totalChance = totalChance + 0.005
183
+ if chance < totalChance then
184
+ local ghostBabyStillInPools = isCollectibleInItemPool(nil, CollectibleType.GHOST_BABY, ItemPoolType.TREASURE)
185
+ local dryBabyStillInPools = isCollectibleInItemPool(nil, CollectibleType.DRY_BABY, ItemPoolType.TREASURE)
186
+ if ghostBabyStillInPools and dryBabyStillInPools then
187
+ local collectibleChance = getRandom(nil, rng)
188
+ local collectibleType = collectibleChance < 0.5 and CollectibleType.GHOST_BABY or CollectibleType.DRY_BABY
189
+ spawnCollectible(nil, collectibleType, position, rng)
190
+ return true
191
+ end
192
+ if ghostBabyStillInPools then
193
+ spawnCollectible(nil, CollectibleType.DRY_BABY, position, rng)
194
+ return true
195
+ end
196
+ if dryBabyStillInPools then
197
+ spawnCollectible(nil, CollectibleType.GHOST_BABY, position, rng)
198
+ return true
199
+ end
200
+ return false
201
+ end
202
+ spawnNPCWithSeed(
203
+ nil,
204
+ EntityType.HOST,
205
+ 0,
206
+ 0,
207
+ position,
208
+ rng
209
+ )
210
+ return true
211
+ end
212
+ function spawnRockAltRewardPolyp(self, _position, rng)
213
+ local chance = getRandom(nil, rng)
214
+ local totalChance = 0
215
+ totalChance = totalChance + 0.68
216
+ if chance < totalChance then
217
+ return false
218
+ end
219
+ return false
220
+ end
221
+ function spawnRockAltRewardBucket(self, _position, rng)
222
+ local chance = getRandom(nil, rng)
223
+ local totalChance = 0
224
+ totalChance = totalChance + 0.68
225
+ if chance < totalChance then
226
+ return false
227
+ end
228
+ return false
229
+ end
230
+ --- Helper function for emulating what happens when a vanilla `GridEntityType.ROCK_ALT` grid entity
231
+ -- breaks.
232
+ --
233
+ -- Note that most of the time, this function will do nothing, similar to how most of the time, when
234
+ -- an individual urn is destroyed, nothing will spawn.
235
+ --
236
+ -- The logic in this function is based on the rewards listed on the wiki:
237
+ -- https://bindingofisaacrebirth.fandom.com/wiki/Rocks
238
+ --
239
+ -- @param position The place to spawn the reward.
240
+ -- @param rockAltType The type of reward to spawn. For example, `RockAltType.URN` will have a chance
241
+ -- at spawning coins and spiders.
242
+ -- @param seedOrRNG Optional. The `Seed` or `RNG` object to use. If an `RNG` object is provided, the
243
+ -- `RNG.Next` method will be called. Default is `getRandomSeed()`. Normally, you
244
+ -- should pass the `InitSeed` of the grid entity that was broken.
245
+ -- @returns Whether or not this function spawned something.
246
+ function ____exports.spawnRockAltReward(self, position, rockAltType, seedOrRNG)
247
+ if seedOrRNG == nil then
248
+ seedOrRNG = getRandomSeed(nil)
249
+ end
250
+ local rng = isRNG(nil, seedOrRNG) and seedOrRNG or newRNG(nil, seedOrRNG)
251
+ repeat
252
+ local ____switch3 = rockAltType
253
+ local ____cond3 = ____switch3 == RockAltType.URN
254
+ if ____cond3 then
255
+ do
256
+ return spawnRockAltRewardUrn(nil, position, rng)
257
+ end
258
+ end
259
+ ____cond3 = ____cond3 or ____switch3 == RockAltType.MUSHROOM
260
+ if ____cond3 then
261
+ do
262
+ return spawnRockAltRewardMushroom(nil, position, rng)
263
+ end
264
+ end
265
+ ____cond3 = ____cond3 or ____switch3 == RockAltType.SKULL
266
+ if ____cond3 then
267
+ do
268
+ return spawnRockAltRewardSkull(nil, position, rng)
269
+ end
270
+ end
271
+ ____cond3 = ____cond3 or ____switch3 == RockAltType.POLYP
272
+ if ____cond3 then
273
+ do
274
+ return spawnRockAltRewardPolyp(nil, position, rng)
275
+ end
276
+ end
277
+ ____cond3 = ____cond3 or ____switch3 == RockAltType.BUCKET
278
+ if ____cond3 then
279
+ do
280
+ return spawnRockAltRewardBucket(nil, position, rng)
281
+ end
282
+ end
283
+ until true
284
+ end
285
+ return ____exports
@@ -1,16 +1,17 @@
1
1
  import { CollectibleType, ItemPoolType } from "isaac-typescript-definitions";
2
2
  /**
3
- * Helper function to see if the given collectible is unlocked on the player's save file. This
3
+ * Helper function to see if the given collectible is unlocked on the current save file. This
4
4
  * requires providing the corresponding item pool that the collectible is located in.
5
5
  *
6
- * - If any player currently has the item, then it is assumed to be unlocked. (This is because Eden
7
- * may have randomly started with the provided collectible, and it will be subsequently removed
8
- * from all pools.)
6
+ * - If any player currently has the collectible, then it is assumed to be unlocked. (This is
7
+ * because in almost all cases, when a collectible is added to a player's inventory, it is
8
+ * subsequently removed from all pools.)
9
9
  * - If the collectible is located in more than one item pool, then any item pool can be provided.
10
10
  * - If the collectible is not located in any item pools, then this function will always return
11
11
  * false.
12
- * - If any player is Tainted Lost, they will be temporarily changed to Isaac and then temporarily
13
- * changed back (because Tainted Lost is not able to retrieve some collectibles from item pools).
12
+ * - If the collectible is non-offensive, any Tainted Losts will be temporarily changed to Isaac and
13
+ * then changed back. (This is because Tainted Lost is not able to retrieve non-offensive
14
+ * collectibles from item pools).
14
15
  */
15
- export declare function isCollectibleUnlocked(collectibleTypeToCheckFor: CollectibleType, itemPoolToCheckFor: ItemPoolType): boolean;
16
+ export declare function isCollectibleUnlocked(collectibleType: CollectibleType, itemPoolType: ItemPoolType): boolean;
16
17
  //# sourceMappingURL=saveFile.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"saveFile.d.ts","sourceRoot":"","sources":["../../src/functions/saveFile.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,YAAY,EAGb,MAAM,8BAA8B,CAAC;AAmBtC;;;;;;;;;;;;GAYG;AACH,wBAAgB,qBAAqB,CACnC,yBAAyB,EAAE,eAAe,EAC1C,kBAAkB,EAAE,YAAY,GAC/B,OAAO,CA4FT"}
1
+ {"version":3,"file":"saveFile.d.ts","sourceRoot":"","sources":["../../src/functions/saveFile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAG7E;;;;;;;;;;;;;GAaG;AACH,wBAAgB,qBAAqB,CACnC,eAAe,EAAE,eAAe,EAChC,YAAY,EAAE,YAAY,GACzB,OAAO,CAMT"}
@@ -1,108 +1,22 @@
1
- local ____lualib = require("lualib_bundle")
2
- local Map = ____lualib.Map
3
- local __TS__New = ____lualib.__TS__New
4
- local __TS__Iterator = ____lualib.__TS__Iterator
5
1
  local ____exports = {}
6
- local ____isaac_2Dtypescript_2Ddefinitions = require("isaac-typescript-definitions")
7
- local CollectibleType = ____isaac_2Dtypescript_2Ddefinitions.CollectibleType
8
- local PlayerType = ____isaac_2Dtypescript_2Ddefinitions.PlayerType
9
- local TrinketType = ____isaac_2Dtypescript_2Ddefinitions.TrinketType
10
- local ____cachedClasses = require("cachedClasses")
11
- local game = ____cachedClasses.game
12
- local ____collectibleSet = require("functions.collectibleSet")
13
- local getCollectibleSet = ____collectibleSet.getCollectibleSet
14
- local ____playerDataStructures = require("functions.playerDataStructures")
15
- local mapGetPlayer = ____playerDataStructures.mapGetPlayer
16
- local mapSetPlayer = ____playerDataStructures.mapSetPlayer
17
- local ____playerIndex = require("functions.playerIndex")
18
- local getPlayers = ____playerIndex.getPlayers
19
2
  local ____players = require("functions.players")
20
3
  local anyPlayerHasCollectible = ____players.anyPlayerHasCollectible
21
- local getPlayersOfType = ____players.getPlayersOfType
22
- local ____utils = require("functions.utils")
23
- local ____repeat = ____utils["repeat"]
24
- local COLLECTIBLES_THAT_AFFECT_ITEM_POOLS = {CollectibleType.CHAOS, CollectibleType.SACRED_ORB, CollectibleType.TMTRAINER}
25
- local TRINKETS_THAT_AFFECT_ITEM_POOLS = {TrinketType.NO}
26
- --- Helper function to see if the given collectible is unlocked on the player's save file. This
4
+ --- Helper function to see if the given collectible is unlocked on the current save file. This
27
5
  -- requires providing the corresponding item pool that the collectible is located in.
28
6
  --
29
- -- - If any player currently has the item, then it is assumed to be unlocked. (This is because Eden
30
- -- may have randomly started with the provided collectible, and it will be subsequently removed
31
- -- from all pools.)
7
+ -- - If any player currently has the collectible, then it is assumed to be unlocked. (This is
8
+ -- because in almost all cases, when a collectible is added to a player's inventory, it is
9
+ -- subsequently removed from all pools.)
32
10
  -- - If the collectible is located in more than one item pool, then any item pool can be provided.
33
11
  -- - If the collectible is not located in any item pools, then this function will always return
34
12
  -- false.
35
- -- - If any player is Tainted Lost, they will be temporarily changed to Isaac and then temporarily
36
- -- changed back (because Tainted Lost is not able to retrieve some collectibles from item pools).
37
- function ____exports.isCollectibleUnlocked(self, collectibleTypeToCheckFor, itemPoolToCheckFor)
38
- if anyPlayerHasCollectible(nil, collectibleTypeToCheckFor) then
13
+ -- - If the collectible is non-offensive, any Tainted Losts will be temporarily changed to Isaac and
14
+ -- then changed back. (This is because Tainted Lost is not able to retrieve non-offensive
15
+ -- collectibles from item pools).
16
+ function ____exports.isCollectibleUnlocked(self, collectibleType, itemPoolType)
17
+ if anyPlayerHasCollectible(nil, collectibleType) then
39
18
  return true
40
19
  end
41
- local taintedLosts = getPlayersOfType(nil, PlayerType.THE_LOST_B)
42
- for ____, player in ipairs(taintedLosts) do
43
- player:ChangePlayerType(PlayerType.ISAAC)
44
- end
45
- local removedItemsMap = __TS__New(Map)
46
- local removedTrinketsMap = __TS__New(Map)
47
- for ____, player in ipairs(getPlayers(nil)) do
48
- local removedItems = {}
49
- for ____, itemToRemove in ipairs(COLLECTIBLES_THAT_AFFECT_ITEM_POOLS) do
50
- if player:HasCollectible(itemToRemove) then
51
- local numCollectibles = player:GetCollectibleNum(itemToRemove)
52
- ____repeat(
53
- nil,
54
- numCollectibles,
55
- function()
56
- player:RemoveCollectible(itemToRemove)
57
- removedItems[#removedItems + 1] = itemToRemove
58
- end
59
- )
60
- end
61
- end
62
- mapSetPlayer(nil, removedItemsMap, player, removedItems)
63
- local removedTrinkets = {}
64
- for ____, trinketToRemove in ipairs(TRINKETS_THAT_AFFECT_ITEM_POOLS) do
65
- if player:HasTrinket(trinketToRemove) then
66
- local numTrinkets = player:GetTrinketMultiplier(trinketToRemove)
67
- ____repeat(
68
- nil,
69
- numTrinkets,
70
- function()
71
- player:TryRemoveTrinket(trinketToRemove)
72
- removedTrinkets[#removedTrinkets + 1] = trinketToRemove
73
- end
74
- )
75
- end
76
- end
77
- mapSetPlayer(nil, removedTrinketsMap, player, removedTrinkets)
78
- end
79
- local itemPool = game:GetItemPool()
80
- local collectibleSet = getCollectibleSet(nil)
81
- for ____, collectibleType in __TS__Iterator(collectibleSet:values()) do
82
- if collectibleType ~= collectibleTypeToCheckFor then
83
- itemPool:AddRoomBlacklist(collectibleType)
84
- end
85
- end
86
- local retrievedCollectibleType = itemPool:GetCollectible(itemPoolToCheckFor, false, 1)
87
- local collectibleUnlocked = retrievedCollectibleType == collectibleTypeToCheckFor
88
- itemPool:ResetRoomBlacklist()
89
- for ____, player in ipairs(getPlayers(nil)) do
90
- local removedItems = mapGetPlayer(nil, removedItemsMap, player)
91
- if removedItems ~= nil then
92
- for ____, collectibleType in ipairs(removedItems) do
93
- player:AddCollectible(collectibleType, 0, false)
94
- end
95
- end
96
- local removedTrinkets = mapGetPlayer(nil, removedTrinketsMap, player)
97
- if removedTrinkets ~= nil then
98
- for ____, trinketType in ipairs(removedTrinkets) do
99
- player:AddTrinket(trinketType, false)
100
- end
101
- end
102
- end
103
- for ____, player in ipairs(taintedLosts) do
104
- player:ChangePlayerType(PlayerType.THE_LOST_B)
105
- end
106
- return collectibleUnlocked
20
+ return ____exports.isCollectibleUnlocked(nil, collectibleType, itemPoolType)
107
21
  end
108
22
  return ____exports
@@ -58,4 +58,6 @@ export declare function getSetCombinations<T>(set: Set<T> | ReadonlySet<T>, incl
58
58
  * the contents is important.
59
59
  */
60
60
  export declare function getSortedSetValues<T>(set: Set<T> | ReadonlySet<T>): T[];
61
+ /** Helper function to sum every value in a set together. */
62
+ export declare function sumSet(set: Set<number> | ReadonlySet<number>): number;
61
63
  //# sourceMappingURL=set.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"set.d.ts","sourceRoot":"","sources":["../../src/functions/set.ts"],"names":[],"mappings":";;AAGA;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAC5B,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC,EACf,GAAG,SAAS,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,GAC3C,IAAI,CAMN;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAC3B,GAAG,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,GACtC,GAAG,CAAC,CAAC,CAAC,CASR;AAED,mGAAmG;AACnG,wBAAgB,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAOlE;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,EACjC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC,EACf,GAAG,YAAY,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,GAC9C,IAAI,CAMN;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,EACnC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,EAC5B,SAAS,GAAE,IAAI,GAAG,GAAqB,EACvC,UAAU,GAAE,CAAC,EAAE,GAAG,SAAS,CAAC,EAAO,GAClC,CAAC,CAGH;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,EAClC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,EAC5B,iBAAiB,EAAE,OAAO,GACzB,aAAa,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAK/B;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAMvE"}
1
+ {"version":3,"file":"set.d.ts","sourceRoot":"","sources":["../../src/functions/set.ts"],"names":[],"mappings":";;AAGA;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAC5B,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC,EACf,GAAG,SAAS,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,GAC3C,IAAI,CAMN;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAC3B,GAAG,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,GACtC,GAAG,CAAC,CAAC,CAAC,CASR;AAED,mGAAmG;AACnG,wBAAgB,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAOlE;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,EACjC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC,EACf,GAAG,YAAY,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,GAC9C,IAAI,CAMN;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,EACnC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,EAC5B,SAAS,GAAE,IAAI,GAAG,GAAqB,EACvC,UAAU,GAAE,CAAC,EAAE,GAAG,SAAS,CAAC,EAAO,GAClC,CAAC,CAGH;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,EAClC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,EAC5B,iBAAiB,EAAE,OAAO,GACzB,aAAa,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAK/B;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAMvE;AAED,4DAA4D;AAC5D,wBAAgB,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,WAAW,CAAC,MAAM,CAAC,GAAG,MAAM,CAGrE"}
@@ -9,6 +9,7 @@ local ____exports = {}
9
9
  local ____array = require("functions.array")
10
10
  local getArrayCombinations = ____array.getArrayCombinations
11
11
  local getRandomArrayElement = ____array.getRandomArrayElement
12
+ local sumArray = ____array.sumArray
12
13
  local ____rng = require("functions.rng")
13
14
  local getRandomSeed = ____rng.getRandomSeed
14
15
  --- Helper function to get a sorted array based on the contents of a set.
@@ -107,4 +108,9 @@ function ____exports.getSetCombinations(self, set, includeEmptyArray)
107
108
  function(____, array) return __TS__New(Set, array) end
108
109
  )
109
110
  end
111
+ --- Helper function to sum every value in a set together.
112
+ function ____exports.sumSet(self, set)
113
+ local values = {__TS__Spread(set:values())}
114
+ return sumArray(nil, values)
115
+ end
110
116
  return ____exports
@@ -17,6 +17,19 @@ export declare function giveTrinketsBack(player: EntityPlayer, trinketSituation:
17
17
  * avoid calling this function multiple times. Default is 1.
18
18
  */
19
19
  export declare function smeltTrinket(player: EntityPlayer, trinketType: TrinketType, numTrinkets?: number): void;
20
+ /**
21
+ * Helper function to smelt two or more different trinkets. If you want to smelt one trinket (or
22
+ * multiple copies of one trinket), then use the `smeltTrinket` helper function instead.
23
+ *
24
+ * This function is variadic, meaning that you can pass as many trinket types as you want to smelt.
25
+ *
26
+ * Before smelting, this function will automatically remove the trinkets that the player is holding,
27
+ * if any, and then give them back after the new trinket is smelted.
28
+ *
29
+ * @param player The player to smelt the trinkets to.
30
+ * @param trinketTypes The trinket types to smelt.
31
+ */
32
+ export declare function smeltTrinkets(player: EntityPlayer, ...trinketTypes: TrinketType[]): void;
20
33
  /**
21
34
  * Helper function to temporarily remove a specific kind of trinket from the player. Use this in
22
35
  * combination with the `giveTrinketsBack` function to take away and give back a trinket on the same
@@ -1 +1 @@
1
- {"version":3,"file":"trinketGive.d.ts","sourceRoot":"","sources":["../../src/functions/trinketGive.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,WAAW,EACZ,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAKlE;;;;GAIG;AACH,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,YAAY,EACpB,gBAAgB,EAAE,gBAAgB,GAAG,SAAS,GAC7C,IAAI,CA+BN;AAED;;;;;;;;;GASG;AACH,wBAAgB,YAAY,CAC1B,MAAM,EAAE,YAAY,EACpB,WAAW,EAAE,WAAW,EACxB,WAAW,SAAI,GACd,IAAI,CASN;AAED;;;;;;;;;GASG;AACH,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,YAAY,EACpB,WAAW,EAAE,WAAW,GACvB,gBAAgB,GAAG,SAAS,CAkC9B;AAED;;;;;;GAMG;AACH,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,YAAY,GACnB,gBAAgB,GAAG,SAAS,CAsB9B"}
1
+ {"version":3,"file":"trinketGive.d.ts","sourceRoot":"","sources":["../../src/functions/trinketGive.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,WAAW,EACZ,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAKlE;;;;GAIG;AACH,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,YAAY,EACpB,gBAAgB,EAAE,gBAAgB,GAAG,SAAS,GAC7C,IAAI,CA+BN;AAED;;;;;;;;;GASG;AACH,wBAAgB,YAAY,CAC1B,MAAM,EAAE,YAAY,EACpB,WAAW,EAAE,WAAW,EACxB,WAAW,SAAI,GACd,IAAI,CASN;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,aAAa,CAC3B,MAAM,EAAE,YAAY,EACpB,GAAG,YAAY,EAAE,WAAW,EAAE,GAC7B,IAAI,CAIN;AAED;;;;;;;;;GASG;AACH,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,YAAY,EACpB,WAAW,EAAE,WAAW,GACvB,gBAAgB,GAAG,SAAS,CAkC9B;AAED;;;;;;GAMG;AACH,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,YAAY,GACnB,gBAAgB,GAAG,SAAS,CAsB9B"}
@@ -81,6 +81,22 @@ function ____exports.smeltTrinket(self, player, trinketType, numTrinkets)
81
81
  )
82
82
  ____exports.giveTrinketsBack(nil, player, trinketSituation)
83
83
  end
84
+ --- Helper function to smelt two or more different trinkets. If you want to smelt one trinket (or
85
+ -- multiple copies of one trinket), then use the `smeltTrinket` helper function instead.
86
+ --
87
+ -- This function is variadic, meaning that you can pass as many trinket types as you want to smelt.
88
+ --
89
+ -- Before smelting, this function will automatically remove the trinkets that the player is holding,
90
+ -- if any, and then give them back after the new trinket is smelted.
91
+ --
92
+ -- @param player The player to smelt the trinkets to.
93
+ -- @param trinketTypes The trinket types to smelt.
94
+ function ____exports.smeltTrinkets(self, player, ...)
95
+ local trinketTypes = {...}
96
+ for ____, trinketType in ipairs(trinketTypes) do
97
+ ____exports.smeltTrinket(nil, player, trinketType)
98
+ end
99
+ end
84
100
  --- Helper function to temporarily remove a specific kind of trinket from the player. Use this in
85
101
  -- combination with the `giveTrinketsBack` function to take away and give back a trinket on the same
86
102
  -- frame. This function correctly handles multiple trinket slots and ensures that all copies of the
@@ -18,6 +18,17 @@ interface CopyVectorReturn {
18
18
  */
19
19
  export declare function copyVector<V extends Vector | SerializedVector, S extends SerializationType>(vector: V, serializationType: S): CopyVectorReturn[S];
20
20
  export declare function copyVector<V extends Vector | SerializedVector>(vector: V): CopyVectorReturn[SerializationType.NONE];
21
+ /**
22
+ * Helper function to get a random vector between (-1, -1) and (1, 1).
23
+ *
24
+ * To get random vectors with a bigger length, multiply this with a number.
25
+ *
26
+ * Use this over the `RandomVector` function when you need the vector to be seeded.
27
+ *
28
+ * @param seedOrRNG Optional. The `Seed` or `RNG` object to use. If an `RNG` object is provided, the
29
+ * `RNG.Next` method will be called. Default is `getRandomSeed()`.
30
+ */
31
+ export declare function getRandomVector(seedOrRNG?: Seed | RNG): Vector;
21
32
  /**
22
33
  * Used to determine is the given table is a serialized `Vector` object created by the save data
23
34
  * manager and/or the `deepCopy` function.
@@ -1 +1 @@
1
- {"version":3,"file":"vector.d.ts","sourceRoot":"","sources":["../../src/functions/vector.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAEzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAM/D,aAAK,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;IAChD,QAAQ,CAAC,uBAAuB,EAAE,MAAM,CAAC;CAC1C,CAAC;AAEF,UAAU,gBAAgB;IACxB,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACjC,CAAC,iBAAiB,CAAC,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAChD,CAAC,iBAAiB,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;CACzC;AAKD;;;;;;GAMG;AACH,wBAAgB,UAAU,CACxB,CAAC,SAAS,MAAM,GAAG,gBAAgB,EACnC,CAAC,SAAS,iBAAiB,EAC3B,MAAM,EAAE,CAAC,EAAE,iBAAiB,EAAE,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;AACxD,wBAAgB,UAAU,CAAC,CAAC,SAAS,MAAM,GAAG,gBAAgB,EAC5D,MAAM,EAAE,CAAC,GACR,gBAAgB,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;AA0D5C;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,OAAO,GACd,MAAM,IAAI,gBAAgB,CAM5B;AAED,8EAA8E;AAC9E,wBAAgB,QAAQ,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,IAAI,MAAM,CAE1D;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAEtE;AAED,sEAAsE;AACtE,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAG3D;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,UAAQ,GAAG,MAAM,CAIpE"}
1
+ {"version":3,"file":"vector.d.ts","sourceRoot":"","sources":["../../src/functions/vector.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAEzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAQ/D,aAAK,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;IAChD,QAAQ,CAAC,uBAAuB,EAAE,MAAM,CAAC;CAC1C,CAAC;AAEF,UAAU,gBAAgB;IACxB,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACjC,CAAC,iBAAiB,CAAC,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAChD,CAAC,iBAAiB,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;CACzC;AAKD;;;;;;GAMG;AACH,wBAAgB,UAAU,CACxB,CAAC,SAAS,MAAM,GAAG,gBAAgB,EACnC,CAAC,SAAS,iBAAiB,EAC3B,MAAM,EAAE,CAAC,EAAE,iBAAiB,EAAE,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;AACxD,wBAAgB,UAAU,CAAC,CAAC,SAAS,MAAM,GAAG,gBAAgB,EAC5D,MAAM,EAAE,CAAC,GACR,gBAAgB,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;AA0D5C;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAC7B,SAAS,GAAE,IAAI,GAAG,GAAqB,GACtC,MAAM,CAOR;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,OAAO,GACd,MAAM,IAAI,gBAAgB,CAM5B;AAED,8EAA8E;AAC9E,wBAAgB,QAAQ,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,IAAI,MAAM,CAE1D;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAEtE;AAED,sEAAsE;AACtE,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAG3D;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,UAAQ,GAAG,MAAM,CAIpE"}
@@ -9,6 +9,12 @@ local angleToDirection = ____direction.angleToDirection
9
9
  local ____isaacAPIClass = require("functions.isaacAPIClass")
10
10
  local isaacAPIClassEquals = ____isaacAPIClass.isaacAPIClassEquals
11
11
  local isIsaacAPIClassOfType = ____isaacAPIClass.isIsaacAPIClassOfType
12
+ local ____random = require("functions.random")
13
+ local getRandomFloat = ____random.getRandomFloat
14
+ local ____rng = require("functions.rng")
15
+ local getRandomSeed = ____rng.getRandomSeed
16
+ local isRNG = ____rng.isRNG
17
+ local newRNG = ____rng.newRNG
12
18
  local ____table = require("functions.table")
13
19
  local copyValuesToTable = ____table.copyValuesToTable
14
20
  local getNumbersFromTable = ____table.getNumbersFromTable
@@ -76,6 +82,23 @@ function ____exports.copyVector(self, vector, serializationType)
76
82
  end
77
83
  until true
78
84
  end
85
+ --- Helper function to get a random vector between (-1, -1) and (1, 1).
86
+ --
87
+ -- To get random vectors with a bigger length, multiply this with a number.
88
+ --
89
+ -- Use this over the `RandomVector` function when you need the vector to be seeded.
90
+ --
91
+ -- @param seedOrRNG Optional. The `Seed` or `RNG` object to use. If an `RNG` object is provided, the
92
+ -- `RNG.Next` method will be called. Default is `getRandomSeed()`.
93
+ function ____exports.getRandomVector(self, seedOrRNG)
94
+ if seedOrRNG == nil then
95
+ seedOrRNG = getRandomSeed(nil)
96
+ end
97
+ local rng = isRNG(nil, seedOrRNG) and seedOrRNG or newRNG(nil, seedOrRNG)
98
+ local x = getRandomFloat(nil, -1, 1, rng)
99
+ local y = getRandomFloat(nil, -1, 1, rng)
100
+ return Vector(x, y)
101
+ end
79
102
  --- Used to determine is the given table is a serialized `Vector` object created by the save data
80
103
  -- manager and/or the `deepCopy` function.
81
104
  function ____exports.isSerializedVector(self, object)
package/dist/index.d.ts CHANGED
@@ -74,6 +74,7 @@ export * from "./functions/gridEntities";
74
74
  export * from "./functions/gridEntitiesSpecific";
75
75
  export * from "./functions/input";
76
76
  export * from "./functions/isaacAPIClass";
77
+ export * from "./functions/itemPool";
77
78
  export * from "./functions/jsonHelpers";
78
79
  export * from "./functions/jsonRoom";
79
80
  export * from "./functions/kColor";
@@ -101,6 +102,7 @@ export * from "./functions/pressurePlate";
101
102
  export * from "./functions/random";
102
103
  export * from "./functions/revive";
103
104
  export * from "./functions/rng";
105
+ export * from "./functions/rockAlt";
104
106
  export * from "./functions/roomData";
105
107
  export * from "./functions/roomGrid";
106
108
  export * from "./functions/rooms";
@@ -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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"}
package/dist/index.lua CHANGED
@@ -590,6 +590,14 @@ do
590
590
  end
591
591
  end
592
592
  end
593
+ do
594
+ local ____export = require("functions.itemPool")
595
+ for ____exportKey, ____exportValue in pairs(____export) do
596
+ if ____exportKey ~= "default" then
597
+ ____exports[____exportKey] = ____exportValue
598
+ end
599
+ end
600
+ end
593
601
  do
594
602
  local ____export = require("functions.jsonHelpers")
595
603
  for ____exportKey, ____exportValue in pairs(____export) do
@@ -806,6 +814,14 @@ do
806
814
  end
807
815
  end
808
816
  end
817
+ do
818
+ local ____export = require("functions.rockAlt")
819
+ for ____exportKey, ____exportValue in pairs(____export) do
820
+ if ____exportKey ~= "default" then
821
+ ____exports[____exportKey] = ____exportValue
822
+ end
823
+ end
824
+ end
809
825
  do
810
826
  local ____export = require("functions.roomData")
811
827
  for ____exportKey, ____exportValue in pairs(____export) do