isaacscript-common 7.0.0 → 7.2.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/callbacks/postPlayerChangeHealth.lua +8 -1
- package/dist/callbacks/postPlayerChangeStat.d.ts +3 -0
- package/dist/callbacks/postPlayerChangeStat.d.ts.map +1 -0
- package/dist/callbacks/postPlayerChangeStat.lua +88 -0
- package/dist/callbacks/subscriptions/postPlayerChangeHealth.d.ts +2 -2
- package/dist/callbacks/subscriptions/postPlayerChangeHealth.d.ts.map +1 -1
- package/dist/callbacks/subscriptions/postPlayerChangeHealth.lua +9 -2
- package/dist/callbacks/subscriptions/postPlayerChangeStat.d.ts +12 -0
- package/dist/callbacks/subscriptions/postPlayerChangeStat.d.ts.map +1 -0
- package/dist/callbacks/subscriptions/postPlayerChangeStat.lua +35 -0
- package/dist/classes/DefaultMap.d.ts +5 -5
- package/dist/classes/DefaultMap.d.ts.map +1 -1
- package/dist/core/constants.d.ts +1 -1
- package/dist/core/constants.d.ts.map +1 -1
- package/dist/core/constants.lua +1 -1
- package/dist/enums/AmbushType.d.ts +1 -0
- package/dist/enums/AmbushType.d.ts.map +1 -1
- package/dist/enums/AmbushType.lua +1 -0
- package/dist/enums/CornerType.d.ts +1 -0
- package/dist/enums/CornerType.d.ts.map +1 -1
- package/dist/enums/CornerType.lua +1 -0
- package/dist/enums/ModCallbackCustom.d.ts +70 -39
- package/dist/enums/ModCallbackCustom.d.ts.map +1 -1
- package/dist/enums/ModCallbackCustom.lua +37 -35
- package/dist/enums/PocketItemType.d.ts +1 -0
- package/dist/enums/PocketItemType.d.ts.map +1 -1
- package/dist/enums/PocketItemType.lua +1 -0
- package/dist/enums/RockAltType.d.ts +1 -0
- package/dist/enums/RockAltType.d.ts.map +1 -1
- package/dist/enums/RockAltType.lua +1 -0
- package/dist/enums/SerializationType.d.ts +1 -0
- package/dist/enums/SerializationType.d.ts.map +1 -1
- package/dist/enums/SerializationType.lua +1 -0
- package/dist/enums/SlotDestructionType.d.ts +1 -0
- package/dist/enums/SlotDestructionType.d.ts.map +1 -1
- package/dist/enums/SlotDestructionType.lua +1 -0
- package/dist/enums/StatType.d.ts +28 -0
- package/dist/enums/StatType.d.ts.map +1 -0
- package/dist/enums/StatType.lua +28 -0
- package/dist/enums/index.d.ts +1 -0
- package/dist/enums/index.d.ts.map +1 -1
- package/dist/enums/index.lua +8 -0
- package/dist/enums/private/CopyableIsaacAPIClassType.d.ts +5 -1
- package/dist/enums/private/CopyableIsaacAPIClassType.d.ts.map +1 -1
- package/dist/enums/private/CopyableIsaacAPIClassType.lua +3 -1
- package/dist/enums/private/SerializationBrand.d.ts +1 -0
- package/dist/enums/private/SerializationBrand.d.ts.map +1 -1
- package/dist/enums/private/SerializationBrand.lua +1 -0
- package/dist/features/customStage/backdrop.d.ts +1 -1
- package/dist/features/customStage/backdrop.d.ts.map +1 -1
- package/dist/features/customStage/backdrop.lua +1 -1
- package/dist/features/customStage/init.lua +2 -2
- package/dist/features/customStage/versusScreen.lua +2 -2
- package/dist/features/saveDataManager/merge.d.ts +1 -0
- package/dist/features/saveDataManager/merge.d.ts.map +1 -1
- package/dist/features/saveDataManager/merge.lua +1 -0
- package/dist/functions/bitSet128.d.ts +25 -0
- package/dist/functions/bitSet128.d.ts.map +1 -0
- package/dist/functions/bitSet128.lua +71 -0
- package/dist/functions/cacheFlag.d.ts +23 -1
- package/dist/functions/cacheFlag.d.ts.map +1 -1
- package/dist/functions/cacheFlag.lua +78 -0
- package/dist/functions/collectibles.d.ts +2 -2
- package/dist/functions/collectibles.lua +2 -2
- package/dist/functions/color.d.ts +1 -1
- package/dist/functions/color.d.ts.map +1 -1
- package/dist/functions/color.lua +2 -2
- package/dist/functions/deepCopy.d.ts +1 -0
- package/dist/functions/deepCopy.d.ts.map +1 -1
- package/dist/functions/deepCopy.lua +1 -0
- package/dist/functions/familiars.d.ts +4 -4
- package/dist/functions/familiars.lua +4 -4
- package/dist/functions/flag.d.ts +1 -1
- package/dist/functions/flag.lua +1 -1
- package/dist/functions/flying.lua +2 -2
- package/dist/functions/index.d.ts +2 -1
- package/dist/functions/index.d.ts.map +1 -1
- package/dist/functions/index.lua +16 -8
- package/dist/functions/input.d.ts +4 -1
- package/dist/functions/input.d.ts.map +1 -1
- package/dist/functions/input.lua +10 -2
- package/dist/functions/jsonRoom.lua +4 -4
- package/dist/functions/kColor.d.ts +1 -1
- package/dist/functions/kColor.d.ts.map +1 -1
- package/dist/functions/kColor.lua +2 -2
- package/dist/functions/log.lua +1 -1
- package/dist/functions/npcs.d.ts +2 -2
- package/dist/functions/npcs.lua +2 -2
- package/dist/functions/playerIndex.d.ts +1 -1
- package/dist/functions/playerIndex.lua +1 -1
- package/dist/functions/playerStats.d.ts +6 -0
- package/dist/functions/playerStats.d.ts.map +1 -0
- package/dist/functions/playerStats.lua +21 -0
- package/dist/functions/players.d.ts +1 -1
- package/dist/functions/players.lua +1 -1
- package/dist/functions/rng.d.ts +1 -1
- package/dist/functions/rng.d.ts.map +1 -1
- package/dist/functions/rng.lua +2 -2
- package/dist/functions/rockAlt.d.ts.map +1 -1
- package/dist/functions/rockAlt.lua +11 -20
- package/dist/functions/roomTransition.d.ts +1 -1
- package/dist/functions/roomTransition.lua +1 -1
- package/dist/functions/rooms.d.ts +1 -1
- package/dist/functions/rooms.d.ts.map +1 -1
- package/dist/functions/rooms.lua +2 -1
- package/dist/functions/sprites.d.ts +3 -3
- package/dist/functions/sprites.lua +3 -3
- package/dist/functions/tears.d.ts +5 -4
- package/dist/functions/tears.d.ts.map +1 -1
- package/dist/functions/tears.lua +5 -4
- package/dist/functions/utils.d.ts +4 -1
- package/dist/functions/utils.d.ts.map +1 -1
- package/dist/functions/utils.lua +4 -1
- package/dist/functions/vector.d.ts +1 -1
- package/dist/functions/vector.d.ts.map +1 -1
- package/dist/functions/vector.lua +2 -2
- package/dist/initCustomCallbacks.d.ts.map +1 -1
- package/dist/initCustomCallbacks.lua +3 -0
- package/dist/interfaces/ChargeBarSprites.d.ts +1 -1
- package/dist/interfaces/Corner.d.ts +5 -0
- package/dist/interfaces/Corner.d.ts.map +1 -1
- package/dist/interfaces/CustomStageLua.d.ts +57 -0
- package/dist/interfaces/CustomStageLua.d.ts.map +1 -1
- package/dist/interfaces/GridEntityCustomData.d.ts +6 -0
- package/dist/interfaces/GridEntityCustomData.d.ts.map +1 -1
- package/dist/interfaces/JSONRoomsFile.d.ts +7 -3
- package/dist/interfaces/JSONRoomsFile.d.ts.map +1 -1
- package/dist/interfaces/PlayerHealth.d.ts +1 -1
- package/dist/interfaces/PlayerHealth.d.ts.map +1 -1
- package/dist/interfaces/PocketItemDescription.d.ts +1 -1
- package/dist/interfaces/PocketItemDescription.d.ts.map +1 -1
- package/dist/interfaces/RoomDescription.d.ts +1 -1
- package/dist/interfaces/RoomDescription.d.ts.map +1 -1
- package/dist/interfaces/SaveData.d.ts +2 -5
- package/dist/interfaces/SaveData.d.ts.map +1 -1
- package/dist/interfaces/StatTypeType.d.ts +21 -0
- package/dist/interfaces/StatTypeType.d.ts.map +1 -0
- package/dist/interfaces/StatTypeType.lua +4 -0
- package/dist/interfaces/TrinketSituation.d.ts +1 -1
- package/dist/interfaces/TrinketSituation.d.ts.map +1 -1
- package/dist/interfaces/index.d.ts +1 -0
- package/dist/interfaces/index.d.ts.map +1 -1
- package/dist/interfaces/private/AddCallbackParameterCustom.d.ts +2 -0
- package/dist/interfaces/private/AddCallbackParameterCustom.d.ts.map +1 -1
- package/dist/maps/keyboardToString.d.ts +4 -0
- package/dist/maps/keyboardToString.d.ts.map +1 -0
- package/dist/maps/keyboardToString.lua +73 -0
- package/dist/objects/callbackRegisterFunctions.d.ts.map +1 -1
- package/dist/objects/callbackRegisterFunctions.lua +3 -0
- package/dist/objects/isaacAPIClassTypeToBrand.d.ts.map +1 -1
- package/dist/objects/isaacAPIClassTypeToBrand.lua +7 -1
- package/dist/objects/isaacAPIClassTypeToFunctions.d.ts.map +1 -1
- package/dist/objects/isaacAPIClassTypeToFunctions.lua +12 -1
- package/dist/types/AnyEntity.d.ts +5 -0
- package/dist/types/AnyEntity.d.ts.map +1 -1
- package/dist/types/AnyGridEntity.d.ts +5 -0
- package/dist/types/AnyGridEntity.d.ts.map +1 -1
- package/dist/types/CollectibleIndex.d.ts +4 -3
- package/dist/types/CollectibleIndex.d.ts.map +1 -1
- package/dist/types/Immutable.d.ts +3 -1
- package/dist/types/Immutable.d.ts.map +1 -1
- package/dist/types/PickupIndex.d.ts +4 -2
- package/dist/types/PickupIndex.d.ts.map +1 -1
- package/dist/types/PlayerIndex.d.ts +3 -2
- package/dist/types/PlayerIndex.d.ts.map +1 -1
- package/dist/types/SerializedIsaacAPIClass.d.ts +6 -0
- package/dist/types/SerializedIsaacAPIClass.d.ts.map +1 -1
- package/dist/types/TSTLClass.d.ts +5 -0
- package/dist/types/TSTLClass.d.ts.map +1 -1
- package/dist/types/TrapdoorDestination.d.ts +3 -0
- package/dist/types/TrapdoorDestination.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/callbacks/postPlayerChangeHealth.ts +7 -1
- package/src/callbacks/postPlayerChangeStat.ts +110 -0
- package/src/callbacks/subscriptions/postPlayerChangeHealth.ts +5 -1
- package/src/callbacks/subscriptions/postPlayerChangeStat.ts +55 -0
- package/src/classes/DefaultMap.ts +7 -7
- package/src/core/constants.ts +1 -1
- package/src/enums/AmbushType.ts +1 -0
- package/src/enums/CornerType.ts +1 -0
- package/src/enums/ModCallbackCustom.ts +36 -4
- package/src/enums/PocketItemType.ts +1 -0
- package/src/enums/RockAltType.ts +1 -0
- package/src/enums/SerializationType.ts +1 -0
- package/src/enums/SlotDestructionType.ts +1 -0
- package/src/enums/StatType.ts +47 -0
- package/src/enums/index.ts +1 -0
- package/src/enums/indexTypeDoc.ts +1 -0
- package/src/enums/private/CopyableIsaacAPIClassType.ts +5 -1
- package/src/enums/private/SerializationBrand.ts +1 -0
- package/src/features/customStage/backdrop.ts +1 -1
- package/src/features/customStage/init.ts +2 -2
- package/src/features/customStage/versusScreen.ts +2 -2
- package/src/features/fastReset.ts +1 -1
- package/src/features/indexTypeDoc.ts +2 -1
- package/src/features/saveDataManager/merge.ts +1 -0
- package/src/functions/bitSet128.ts +96 -0
- package/src/functions/cacheFlag.ts +90 -1
- package/src/functions/collectibles.ts +2 -2
- package/src/functions/color.ts +3 -2
- package/src/functions/deepCopy.ts +1 -0
- package/src/functions/familiars.ts +4 -4
- package/src/functions/flag.ts +1 -1
- package/src/functions/flying.ts +1 -1
- package/src/functions/index.ts +2 -1
- package/src/functions/indexTypeDoc.ts +2 -1
- package/src/functions/input.ts +15 -2
- package/src/functions/jsonRoom.ts +4 -4
- package/src/functions/kColor.ts +2 -2
- package/src/functions/log.ts +1 -1
- package/src/functions/npcs.ts +2 -2
- package/src/functions/playerIndex.ts +1 -1
- package/src/functions/playerStats.ts +25 -0
- package/src/functions/players.ts +1 -1
- package/src/functions/rng.ts +2 -2
- package/src/functions/rockAlt.ts +28 -13
- package/src/functions/roomTransition.ts +1 -1
- package/src/functions/rooms.ts +2 -1
- package/src/functions/sprites.ts +3 -3
- package/src/functions/tears.ts +5 -4
- package/src/functions/utils.ts +5 -1
- package/src/functions/vector.ts +2 -2
- package/src/initCustomCallbacks.ts +2 -0
- package/src/interfaces/ChargeBarSprites.ts +1 -1
- package/src/interfaces/Corner.ts +5 -0
- package/src/interfaces/CustomStageLua.ts +66 -0
- package/src/interfaces/GridEntityCustomData.ts +6 -0
- package/src/interfaces/JSONRoomsFile.ts +7 -3
- package/src/interfaces/PlayerHealth.ts +1 -1
- package/src/interfaces/PocketItemDescription.ts +1 -1
- package/src/interfaces/RoomDescription.ts +1 -1
- package/src/interfaces/SaveData.ts +1 -5
- package/src/interfaces/StatTypeType.ts +21 -0
- package/src/interfaces/TrinketSituation.ts +1 -1
- package/src/interfaces/index.ts +1 -0
- package/src/interfaces/indexTypeDoc.ts +1 -0
- package/src/interfaces/private/AddCallbackParameterCustom.ts +2 -0
- package/src/maps/keyboardToString.ts +77 -0
- package/src/objects/callbackRegisterFunctions.ts +2 -0
- package/src/objects/isaacAPIClassTypeToBrand.ts +1 -0
- package/src/objects/isaacAPIClassTypeToFunctions.ts +12 -0
- package/src/types/AnyEntity.ts +5 -0
- package/src/types/AnyGridEntity.ts +5 -0
- package/src/types/CollectibleIndex.ts +4 -3
- package/src/types/Immutable.ts +3 -1
- package/src/types/PickupIndex.ts +4 -2
- package/src/types/PlayerIndex.ts +3 -2
- package/src/types/SerializedIsaacAPIClass.ts +6 -0
- package/src/types/TSTLClass.ts +5 -0
- package/src/types/TrapdoorDestination.ts +3 -0
- package/dist/functions/collectibleCacheFlag.d.ts +0 -24
- package/dist/functions/collectibleCacheFlag.d.ts.map +0 -1
- package/dist/functions/collectibleCacheFlag.lua +0 -80
- package/src/functions/collectibleCacheFlag.ts +0 -90
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
local ____lualib = require("lualib_bundle")
|
|
2
|
-
local Map = ____lualib.Map
|
|
3
|
-
local __TS__New = ____lualib.__TS__New
|
|
4
|
-
local Set = ____lualib.Set
|
|
5
|
-
local ____exports = {}
|
|
6
|
-
local ____isaac_2Dtypescript_2Ddefinitions = require("isaac-typescript-definitions")
|
|
7
|
-
local CacheFlag = ____isaac_2Dtypescript_2Ddefinitions.CacheFlag
|
|
8
|
-
local ____cachedClasses = require("core.cachedClasses")
|
|
9
|
-
local itemConfig = ____cachedClasses.itemConfig
|
|
10
|
-
local ____collectibleSet = require("functions.collectibleSet")
|
|
11
|
-
local getCollectibleArray = ____collectibleSet.getCollectibleArray
|
|
12
|
-
local ____enums = require("functions.enums")
|
|
13
|
-
local getEnumValues = ____enums.getEnumValues
|
|
14
|
-
local ____flag = require("functions.flag")
|
|
15
|
-
local hasFlag = ____flag.hasFlag
|
|
16
|
-
local ____set = require("functions.set")
|
|
17
|
-
local copySet = ____set.copySet
|
|
18
|
-
local getSortedSetValues = ____set.getSortedSetValues
|
|
19
|
-
local ____utils = require("functions.utils")
|
|
20
|
-
local ____repeat = ____utils["repeat"]
|
|
21
|
-
function ____exports.collectibleHasCacheFlag(self, collectibleType, cacheFlag)
|
|
22
|
-
local itemConfigItem = itemConfig:GetCollectible(collectibleType)
|
|
23
|
-
if itemConfigItem == nil then
|
|
24
|
-
return false
|
|
25
|
-
end
|
|
26
|
-
return hasFlag(nil, itemConfigItem.CacheFlags, cacheFlag)
|
|
27
|
-
end
|
|
28
|
-
local CACHE_FLAG_TO_COLLECTIBLES_MAP = __TS__New(Map)
|
|
29
|
-
local function initCacheFlagMap(self)
|
|
30
|
-
for ____, cacheFlag in ipairs(getEnumValues(nil, CacheFlag)) do
|
|
31
|
-
local collectiblesSet = __TS__New(Set)
|
|
32
|
-
for ____, collectibleType in ipairs(getCollectibleArray(nil)) do
|
|
33
|
-
if ____exports.collectibleHasCacheFlag(nil, collectibleType, cacheFlag) then
|
|
34
|
-
collectiblesSet:add(collectibleType)
|
|
35
|
-
end
|
|
36
|
-
end
|
|
37
|
-
CACHE_FLAG_TO_COLLECTIBLES_MAP:set(cacheFlag, collectiblesSet)
|
|
38
|
-
end
|
|
39
|
-
end
|
|
40
|
-
--- Returns a set containing every collectible type with the given cache flag, including modded
|
|
41
|
-
-- collectibles.
|
|
42
|
-
function ____exports.getCollectiblesForCacheFlag(self, cacheFlag)
|
|
43
|
-
if CACHE_FLAG_TO_COLLECTIBLES_MAP.size == 0 then
|
|
44
|
-
initCacheFlagMap(nil)
|
|
45
|
-
end
|
|
46
|
-
local collectiblesSet = CACHE_FLAG_TO_COLLECTIBLES_MAP:get(cacheFlag)
|
|
47
|
-
if collectiblesSet == nil then
|
|
48
|
-
return __TS__New(Set)
|
|
49
|
-
end
|
|
50
|
-
return copySet(nil, collectiblesSet)
|
|
51
|
-
end
|
|
52
|
-
--- Returns an array containing every collectible type that the player has that matches the provided
|
|
53
|
-
-- CacheFlag.
|
|
54
|
-
--
|
|
55
|
-
-- For example, if the cache flag is `CacheFlag.FLYING`, and the player has one Lord of the Pit and
|
|
56
|
-
-- two Dead Doves, then this function would return:
|
|
57
|
-
--
|
|
58
|
-
-- ```ts
|
|
59
|
-
-- [
|
|
60
|
-
-- CollectibleType.LORD_OF_THE_PIT,
|
|
61
|
-
-- CollectibleType.DEAD_DOVE,
|
|
62
|
-
-- CollectibleType.DEAD_DOVE,
|
|
63
|
-
-- ]
|
|
64
|
-
-- ```
|
|
65
|
-
function ____exports.getPlayerCollectiblesForCacheFlag(self, player, cacheFlag)
|
|
66
|
-
local collectiblesForCacheFlag = ____exports.getCollectiblesForCacheFlag(nil, cacheFlag)
|
|
67
|
-
local playerCollectibles = {}
|
|
68
|
-
for ____, collectibleType in ipairs(getSortedSetValues(nil, collectiblesForCacheFlag)) do
|
|
69
|
-
local numCollectibles = player:GetCollectibleNum(collectibleType)
|
|
70
|
-
____repeat(
|
|
71
|
-
nil,
|
|
72
|
-
numCollectibles,
|
|
73
|
-
function()
|
|
74
|
-
playerCollectibles[#playerCollectibles + 1] = collectibleType
|
|
75
|
-
end
|
|
76
|
-
)
|
|
77
|
-
end
|
|
78
|
-
return playerCollectibles
|
|
79
|
-
end
|
|
80
|
-
return ____exports
|
|
@@ -1,90 +0,0 @@
|
|
|
1
|
-
import { CacheFlag, CollectibleType } from "isaac-typescript-definitions";
|
|
2
|
-
import { itemConfig } from "../core/cachedClasses";
|
|
3
|
-
import { getCollectibleArray } from "./collectibleSet";
|
|
4
|
-
import { getEnumValues } from "./enums";
|
|
5
|
-
import { hasFlag } from "./flag";
|
|
6
|
-
import { copySet, getSortedSetValues } from "./set";
|
|
7
|
-
import { repeat } from "./utils";
|
|
8
|
-
|
|
9
|
-
const CACHE_FLAG_TO_COLLECTIBLES_MAP = new Map<
|
|
10
|
-
CacheFlag,
|
|
11
|
-
Set<CollectibleType>
|
|
12
|
-
>();
|
|
13
|
-
|
|
14
|
-
function initCacheFlagMap() {
|
|
15
|
-
for (const cacheFlag of getEnumValues(CacheFlag)) {
|
|
16
|
-
const collectiblesSet = new Set<CollectibleType>();
|
|
17
|
-
|
|
18
|
-
for (const collectibleType of getCollectibleArray()) {
|
|
19
|
-
if (collectibleHasCacheFlag(collectibleType, cacheFlag)) {
|
|
20
|
-
collectiblesSet.add(collectibleType);
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
CACHE_FLAG_TO_COLLECTIBLES_MAP.set(cacheFlag, collectiblesSet);
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
export function collectibleHasCacheFlag(
|
|
29
|
-
collectibleType: CollectibleType,
|
|
30
|
-
cacheFlag: CacheFlag,
|
|
31
|
-
): boolean {
|
|
32
|
-
const itemConfigItem = itemConfig.GetCollectible(collectibleType);
|
|
33
|
-
if (itemConfigItem === undefined) {
|
|
34
|
-
return false;
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
return hasFlag(itemConfigItem.CacheFlags, cacheFlag);
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
/**
|
|
41
|
-
* Returns a set containing every collectible type with the given cache flag, including modded
|
|
42
|
-
* collectibles.
|
|
43
|
-
*/
|
|
44
|
-
export function getCollectiblesForCacheFlag(
|
|
45
|
-
cacheFlag: CacheFlag,
|
|
46
|
-
): Set<CollectibleType> {
|
|
47
|
-
// Lazy initialize the map.
|
|
48
|
-
if (CACHE_FLAG_TO_COLLECTIBLES_MAP.size === 0) {
|
|
49
|
-
initCacheFlagMap();
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
const collectiblesSet = CACHE_FLAG_TO_COLLECTIBLES_MAP.get(cacheFlag);
|
|
53
|
-
if (collectiblesSet === undefined) {
|
|
54
|
-
return new Set();
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
return copySet(collectiblesSet);
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
/**
|
|
61
|
-
* Returns an array containing every collectible type that the player has that matches the provided
|
|
62
|
-
* CacheFlag.
|
|
63
|
-
*
|
|
64
|
-
* For example, if the cache flag is `CacheFlag.FLYING`, and the player has one Lord of the Pit and
|
|
65
|
-
* two Dead Doves, then this function would return:
|
|
66
|
-
*
|
|
67
|
-
* ```ts
|
|
68
|
-
* [
|
|
69
|
-
* CollectibleType.LORD_OF_THE_PIT,
|
|
70
|
-
* CollectibleType.DEAD_DOVE,
|
|
71
|
-
* CollectibleType.DEAD_DOVE,
|
|
72
|
-
* ]
|
|
73
|
-
* ```
|
|
74
|
-
*/
|
|
75
|
-
export function getPlayerCollectiblesForCacheFlag(
|
|
76
|
-
player: EntityPlayer,
|
|
77
|
-
cacheFlag: CacheFlag,
|
|
78
|
-
): CollectibleType[] {
|
|
79
|
-
const collectiblesForCacheFlag = getCollectiblesForCacheFlag(cacheFlag);
|
|
80
|
-
|
|
81
|
-
const playerCollectibles: CollectibleType[] = [];
|
|
82
|
-
for (const collectibleType of getSortedSetValues(collectiblesForCacheFlag)) {
|
|
83
|
-
const numCollectibles = player.GetCollectibleNum(collectibleType);
|
|
84
|
-
repeat(numCollectibles, () => {
|
|
85
|
-
playerCollectibles.push(collectibleType);
|
|
86
|
-
});
|
|
87
|
-
}
|
|
88
|
-
|
|
89
|
-
return playerCollectibles;
|
|
90
|
-
}
|