isaacscript-common 8.9.1 → 9.0.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/core/constantsFirstLast.d.ts +4 -4
- package/dist/core/constantsFirstLast.d.ts.map +1 -1
- package/dist/core/constantsFirstLast.lua +4 -4
- package/dist/features/extraConsoleCommands/listCommands.lua +14 -14
- package/dist/features/firstLast.d.ts +9 -9
- package/dist/features/firstLast.d.ts.map +1 -1
- package/dist/features/firstLast.lua +26 -26
- package/dist/features/preventCollectibleRotation.lua +2 -2
- package/dist/functions/cards.d.ts +27 -36
- package/dist/functions/cards.d.ts.map +1 -1
- package/dist/functions/cards.lua +70 -79
- package/dist/functions/collectibles.d.ts +1 -6
- package/dist/functions/collectibles.d.ts.map +1 -1
- package/dist/functions/collectibles.lua +1 -6
- package/dist/functions/pickupsSpecific.d.ts +9 -9
- package/dist/functions/pickupsSpecific.d.ts.map +1 -1
- package/dist/functions/pickupsSpecific.lua +16 -16
- package/dist/functions/pills.d.ts +1 -6
- package/dist/functions/pills.d.ts.map +1 -1
- package/dist/functions/pills.lua +1 -6
- package/dist/functions/pocketItems.lua +4 -4
- package/dist/functions/rockAlt.lua +2 -2
- package/dist/functions/trinkets.d.ts +1 -6
- package/dist/functions/trinkets.d.ts.map +1 -1
- package/dist/functions/trinkets.lua +1 -6
- package/dist/functions/types.d.ts +3 -3
- package/dist/functions/types.d.ts.map +1 -1
- package/dist/functions/types.lua +2 -2
- package/dist/index.d.ts +53 -77
- package/dist/maps/cardMap.d.ts +2 -2
- package/dist/maps/cardMap.d.ts.map +1 -1
- package/dist/maps/cardMap.lua +203 -203
- package/dist/objects/cardDescriptions.d.ts +2 -2
- package/dist/objects/cardDescriptions.d.ts.map +1 -1
- package/dist/objects/cardDescriptions.lua +99 -99
- package/dist/objects/cardNames.d.ts +2 -2
- package/dist/objects/cardNames.d.ts.map +1 -1
- package/dist/objects/cardNames.lua +99 -99
- package/dist/objects/cardTypeToItemConfigCardType.d.ts +6 -0
- package/dist/objects/cardTypeToItemConfigCardType.d.ts.map +1 -0
- package/dist/objects/cardTypeToItemConfigCardType.lua +106 -0
- package/package.json +2 -2
- package/src/core/constantsFirstLast.ts +4 -4
- package/src/features/extraConsoleCommands/listCommands.ts +16 -16
- package/src/features/firstLast.ts +26 -26
- package/src/features/preventCollectibleRotation.ts +2 -2
- package/src/functions/cards.ts +102 -88
- package/src/functions/collectibles.ts +1 -6
- package/src/functions/pickupsSpecific.ts +16 -13
- package/src/functions/pills.ts +1 -6
- package/src/functions/pocketItems.ts +4 -4
- package/src/functions/rockAlt.ts +2 -2
- package/src/functions/trinkets.ts +1 -6
- package/src/functions/types.ts +3 -3
- package/src/maps/cardMap.ts +204 -204
- package/src/objects/cardDescriptions.ts +100 -100
- package/src/objects/cardNames.ts +100 -100
- package/src/objects/cardTypeToItemConfigCardType.ts +106 -0
- package/dist/objects/cardTypes.d.ts +0 -6
- package/dist/objects/cardTypes.d.ts.map +0 -1
- package/dist/objects/cardTypes.lua +0 -106
- package/src/objects/cardTypes.ts +0 -104
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { CardType, CollectibleType, LevelStage, PillColor, PillEffect, PlayerType, RoomType, TrinketType } from "isaac-typescript-definitions";
|
|
2
2
|
/** Equal to `CollectibleType.SAD_ONION`. */
|
|
3
3
|
export declare const FIRST_COLLECTIBLE_TYPE = CollectibleType.SAD_ONION;
|
|
4
4
|
/**
|
|
@@ -17,11 +17,11 @@ export declare const LAST_VANILLA_TRINKET_TYPE: TrinketType;
|
|
|
17
17
|
/** Calculated from the `TrinketType` enum. (`TrinketType.NULL` is not included.) */
|
|
18
18
|
export declare const NUM_VANILLA_TRINKET_TYPES: number;
|
|
19
19
|
/** Equal to `Card.FOOL`. */
|
|
20
|
-
export declare const
|
|
20
|
+
export declare const FIRST_CARD_TYPE = CardType.FOOL;
|
|
21
21
|
/** Calculated from the `Card` enum. */
|
|
22
|
-
export declare const
|
|
22
|
+
export declare const LAST_VANILLA_CARD_TYPE: CardType;
|
|
23
23
|
/** Calculated from the `Card` enum. `Card.NULL` is not included. */
|
|
24
|
-
export declare const
|
|
24
|
+
export declare const NUM_VANILLA_CARD_TYPES: number;
|
|
25
25
|
/** Equal to `PillEffect.BAD_GAS`. */
|
|
26
26
|
export declare const FIRST_PILL_EFFECT = PillEffect.BAD_GAS;
|
|
27
27
|
/** Calculated from the `PillEffect` enum. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constantsFirstLast.d.ts","sourceRoot":"","sources":["../../src/core/constantsFirstLast.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,
|
|
1
|
+
{"version":3,"file":"constantsFirstLast.d.ts","sourceRoot":"","sources":["../../src/core/constantsFirstLast.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,QAAQ,EACR,eAAe,EACf,UAAU,EACV,SAAS,EACT,UAAU,EACV,UAAU,EACV,QAAQ,EACR,WAAW,EACZ,MAAM,8BAA8B,CAAC;AAOtC,4CAA4C;AAC5C,eAAO,MAAM,sBAAsB,4BAA4B,CAAC;AAEhE;;;;;GAKG;AACH,eAAO,MAAM,6BAA6B,iBAAoC,CAAC;AAE/E,4FAA4F;AAC5F,eAAO,MAAM,6BAA6B,QAAqC,CAAC;AAMhF,8CAA8C;AAC9C,eAAO,MAAM,kBAAkB,8BAA8B,CAAC;AAE9D,8CAA8C;AAC9C,eAAO,MAAM,yBAAyB,aAAgC,CAAC;AAEvE,oFAAoF;AACpF,eAAO,MAAM,yBAAyB,QAAiC,CAAC;AAMxE,4BAA4B;AAC5B,eAAO,MAAM,eAAe,gBAAgB,CAAC;AAE7C,uCAAuC;AACvC,eAAO,MAAM,sBAAsB,UAA6B,CAAC;AAEjE,oEAAoE;AACpE,eAAO,MAAM,sBAAsB,QAA8B,CAAC;AAMlE,qCAAqC;AACrC,eAAO,MAAM,iBAAiB,qBAAqB,CAAC;AAEpD,6CAA6C;AAC7C,eAAO,MAAM,wBAAwB,YAA+B,CAAC;AAErE;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,QAA4B,CAAC;AAMlE,sCAAsC;AACtC,eAAO,MAAM,gBAAgB,sBAAsB,CAAC;AAEpD;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,yBAAyB,CAAC;AAE7D,4CAA4C;AAC5C,eAAO,MAAM,sBAAsB,4BAA4B,CAAC;AAEhE;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,+BAA+B,CAAC;AAElE,eAAO,MAAM,sBAAsB,QAA4C,CAAC;AAMhF,mCAAmC;AACnC,eAAO,MAAM,eAAe,mBAAmB,CAAC;AAIhD,6CAA6C;AAC7C,eAAO,MAAM,sBAAsB,YAA+B,CAAC;AAMnE,eAAO,MAAM,eAAe,mBAAmB,CAAC;AAChD,eAAO,MAAM,cAAc,UAA6B,CAAC;AAMzD,eAAO,MAAM,WAAW,wBAAwB,CAAC;AACjD,eAAO,MAAM,UAAU,YAA+B,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
local ____exports = {}
|
|
2
2
|
local ____isaac_2Dtypescript_2Ddefinitions = require("isaac-typescript-definitions")
|
|
3
|
-
local
|
|
3
|
+
local CardType = ____isaac_2Dtypescript_2Ddefinitions.CardType
|
|
4
4
|
local CollectibleType = ____isaac_2Dtypescript_2Ddefinitions.CollectibleType
|
|
5
5
|
local LevelStage = ____isaac_2Dtypescript_2Ddefinitions.LevelStage
|
|
6
6
|
local PillColor = ____isaac_2Dtypescript_2Ddefinitions.PillColor
|
|
@@ -27,11 +27,11 @@ ____exports.LAST_VANILLA_TRINKET_TYPE = getLastEnumValue(nil, TrinketType)
|
|
|
27
27
|
--- Calculated from the `TrinketType` enum. (`TrinketType.NULL` is not included.)
|
|
28
28
|
____exports.NUM_VANILLA_TRINKET_TYPES = getEnumLength(nil, TrinketType) - 1
|
|
29
29
|
--- Equal to `Card.FOOL`.
|
|
30
|
-
____exports.
|
|
30
|
+
____exports.FIRST_CARD_TYPE = CardType.FOOL
|
|
31
31
|
--- Calculated from the `Card` enum.
|
|
32
|
-
____exports.
|
|
32
|
+
____exports.LAST_VANILLA_CARD_TYPE = getLastEnumValue(nil, CardType)
|
|
33
33
|
--- Calculated from the `Card` enum. `Card.NULL` is not included.
|
|
34
|
-
____exports.
|
|
34
|
+
____exports.NUM_VANILLA_CARD_TYPES = getEnumLength(nil, CardType) - 1
|
|
35
35
|
--- Equal to `PillEffect.BAD_GAS`.
|
|
36
36
|
____exports.FIRST_PILL_EFFECT = PillEffect.BAD_GAS
|
|
37
37
|
--- Calculated from the `PillEffect` enum.
|
|
@@ -23,7 +23,7 @@ local sfxManager = ____cachedClasses.sfxManager
|
|
|
23
23
|
local ____constants = require("core.constants")
|
|
24
24
|
local MAX_LEVEL_GRID_INDEX = ____constants.MAX_LEVEL_GRID_INDEX
|
|
25
25
|
local ____constantsFirstLast = require("core.constantsFirstLast")
|
|
26
|
-
local
|
|
26
|
+
local FIRST_CARD_TYPE = ____constantsFirstLast.FIRST_CARD_TYPE
|
|
27
27
|
local FIRST_CHARACTER = ____constantsFirstLast.FIRST_CHARACTER
|
|
28
28
|
local FIRST_PILL_EFFECT = ____constantsFirstLast.FIRST_PILL_EFFECT
|
|
29
29
|
local FIRST_ROOM_TYPE = ____constantsFirstLast.FIRST_ROOM_TYPE
|
|
@@ -86,7 +86,7 @@ local setUnseeded = ____run.setUnseeded
|
|
|
86
86
|
local ____trinkets = require("functions.trinkets")
|
|
87
87
|
local getGoldenTrinketType = ____trinkets.getGoldenTrinketType
|
|
88
88
|
local ____types = require("functions.types")
|
|
89
|
-
local
|
|
89
|
+
local asCardType = ____types.asCardType
|
|
90
90
|
local ____utils = require("functions.utils")
|
|
91
91
|
local irange = ____utils.irange
|
|
92
92
|
local printConsole = ____utils.printConsole
|
|
@@ -100,7 +100,7 @@ local PILL_EFFECT_MAP = ____pillEffectMap.PILL_EFFECT_MAP
|
|
|
100
100
|
local ____roomTypeMap = require("maps.roomTypeMap")
|
|
101
101
|
local ROOM_TYPE_MAP = ____roomTypeMap.ROOM_TYPE_MAP
|
|
102
102
|
local ____firstLast = require("features.firstLast")
|
|
103
|
-
local
|
|
103
|
+
local getLastCardType = ____firstLast.getLastCardType
|
|
104
104
|
local getLastPillEffect = ____firstLast.getLastPillEffect
|
|
105
105
|
local ____commandsSubroutines = require("features.extraConsoleCommands.commandsSubroutines")
|
|
106
106
|
local addHeart = ____commandsSubroutines.addHeart
|
|
@@ -356,7 +356,7 @@ function ____exports.card(self, params)
|
|
|
356
356
|
printConsole(nil, "You must specify a card name or number.")
|
|
357
357
|
return
|
|
358
358
|
end
|
|
359
|
-
local
|
|
359
|
+
local cardType
|
|
360
360
|
local num = tonumber(params)
|
|
361
361
|
if num == nil then
|
|
362
362
|
local match = getMapPartialMatch(nil, params, CARD_MAP)
|
|
@@ -364,28 +364,28 @@ function ____exports.card(self, params)
|
|
|
364
364
|
printConsole(nil, "Unknown card: " .. params)
|
|
365
365
|
return
|
|
366
366
|
end
|
|
367
|
-
|
|
367
|
+
cardType = match[2]
|
|
368
368
|
else
|
|
369
|
-
local
|
|
370
|
-
if num <
|
|
369
|
+
local lastCardType = getLastCardType(nil)
|
|
370
|
+
if num < FIRST_CARD_TYPE or num > lastCardType then
|
|
371
371
|
printConsole(
|
|
372
372
|
nil,
|
|
373
373
|
"Invalid card sub-type: " .. tostring(num)
|
|
374
374
|
)
|
|
375
375
|
return
|
|
376
376
|
end
|
|
377
|
-
|
|
377
|
+
cardType = num
|
|
378
378
|
end
|
|
379
|
-
local cardName = getCardName(nil,
|
|
380
|
-
Isaac.ExecuteCommand("g k" .. tostring(
|
|
379
|
+
local cardName = getCardName(nil, cardType)
|
|
380
|
+
Isaac.ExecuteCommand("g k" .. tostring(cardType))
|
|
381
381
|
printConsole(
|
|
382
382
|
nil,
|
|
383
|
-
((("Gave card: " .. cardName) .. " (") .. tostring(
|
|
383
|
+
((("Gave card: " .. cardName) .. " (") .. tostring(cardType)) .. ")"
|
|
384
384
|
)
|
|
385
385
|
end
|
|
386
386
|
--- Spawns every card on the ground, starting at the top-left-most tile.
|
|
387
387
|
function ____exports.cards(self)
|
|
388
|
-
local
|
|
388
|
+
local lastCardType = getLastCardType(nil)
|
|
389
389
|
local cardType = 1
|
|
390
390
|
do
|
|
391
391
|
local y = 0
|
|
@@ -393,13 +393,13 @@ function ____exports.cards(self)
|
|
|
393
393
|
do
|
|
394
394
|
local x = 0
|
|
395
395
|
while x <= 12 do
|
|
396
|
-
if
|
|
396
|
+
if asCardType(nil, cardType) == lastCardType then
|
|
397
397
|
return
|
|
398
398
|
end
|
|
399
399
|
local position = gridCoordinatesToWorldPosition(nil, x, y)
|
|
400
400
|
spawnCard(
|
|
401
401
|
nil,
|
|
402
|
-
|
|
402
|
+
asCardType(nil, cardType),
|
|
403
403
|
position
|
|
404
404
|
)
|
|
405
405
|
cardType = cardType + 1
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { CardType, CollectibleType, PillEffect, TrinketType } from "isaac-typescript-definitions";
|
|
2
2
|
/**
|
|
3
3
|
* Returns the first modded collectible type, or undefined if there are no modded collectibles.
|
|
4
4
|
*
|
|
@@ -52,7 +52,7 @@ export declare function getNumModdedCollectibleTypes(): int;
|
|
|
52
52
|
*/
|
|
53
53
|
export declare function getFirstModdedTrinketType(): TrinketType | undefined;
|
|
54
54
|
/**
|
|
55
|
-
* Will change depending on how many modded
|
|
55
|
+
* Will change depending on how many modded trinkets there are.
|
|
56
56
|
*
|
|
57
57
|
* This is equal to the number of trinket types, since all trinket types are contiguous (unlike
|
|
58
58
|
* collectibles).
|
|
@@ -74,7 +74,7 @@ export declare function getLastTrinketType(): TrinketType;
|
|
|
74
74
|
*/
|
|
75
75
|
export declare function getModdedTrinketTypes(): TrinketType[];
|
|
76
76
|
/**
|
|
77
|
-
* Will change depending on how many modded
|
|
77
|
+
* Will change depending on how many modded trinkets there are.
|
|
78
78
|
*
|
|
79
79
|
* Equal to `itemConfig.GetTrinkets().Size - 1`. (We subtract one to account for
|
|
80
80
|
* `TrinketType.NULL`.)
|
|
@@ -101,14 +101,14 @@ export declare function getTrinketTypes(): TrinketType[];
|
|
|
101
101
|
* This function can only be called if at least one callback has been executed. This is because not
|
|
102
102
|
* all cards will necessarily be present when a mod first loads (due to mod load order).
|
|
103
103
|
*/
|
|
104
|
-
export declare function
|
|
104
|
+
export declare function getAllCardTypes(): CardType[];
|
|
105
105
|
/**
|
|
106
106
|
* Returns the first modded card sub-type, or undefined if there are no modded cards.
|
|
107
107
|
*
|
|
108
108
|
* This function can only be called if at least one callback has been executed. This is because not
|
|
109
109
|
* all cards will necessarily be present when a mod first loads (due to mod load order).
|
|
110
110
|
*/
|
|
111
|
-
export declare function
|
|
111
|
+
export declare function getFirstModdedCardType(): CardType | undefined;
|
|
112
112
|
/**
|
|
113
113
|
* Will change depending on how many modded cards there are.
|
|
114
114
|
*
|
|
@@ -118,7 +118,7 @@ export declare function getFirstModdedCard(): Card | undefined;
|
|
|
118
118
|
* This function can only be called if at least one callback has been executed. This is because not
|
|
119
119
|
* all cards will necessarily be present when a mod first loads (due to mod load order).
|
|
120
120
|
*/
|
|
121
|
-
export declare function
|
|
121
|
+
export declare function getLastCardType(): CardType;
|
|
122
122
|
/**
|
|
123
123
|
* Helper function to get an array with every modded card sub-type.
|
|
124
124
|
*
|
|
@@ -127,7 +127,7 @@ export declare function getLastCard(): Card;
|
|
|
127
127
|
* This function can only be called if at least one callback has been executed. This is because not
|
|
128
128
|
* all cards will necessarily be present when a mod first loads (due to mod load order).
|
|
129
129
|
*/
|
|
130
|
-
export declare function
|
|
130
|
+
export declare function getModdedCardTypes(): CardType[];
|
|
131
131
|
/**
|
|
132
132
|
* Will change depending on how many modded cards there are.
|
|
133
133
|
*
|
|
@@ -136,12 +136,12 @@ export declare function getModdedCards(): Card[];
|
|
|
136
136
|
* This function can only be called if at least one callback has been executed. This is because not
|
|
137
137
|
* all cards will necessarily be present when a mod first loads (due to mod load order).
|
|
138
138
|
*/
|
|
139
|
-
export declare function
|
|
139
|
+
export declare function getNumCardTypes(): int;
|
|
140
140
|
/**
|
|
141
141
|
* This function can only be called if at least one callback has been executed. This is because not
|
|
142
142
|
* all trinkets will necessarily be present when a mod first loads (due to mod load order).
|
|
143
143
|
*/
|
|
144
|
-
export declare function
|
|
144
|
+
export declare function getNumModdedCardTypes(): int;
|
|
145
145
|
/**
|
|
146
146
|
* Helper function to get an array with every valid pill effect. This includes modded pill effects.
|
|
147
147
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"firstLast.d.ts","sourceRoot":"","sources":["../../src/features/firstLast.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,
|
|
1
|
+
{"version":3,"file":"firstLast.d.ts","sourceRoot":"","sources":["../../src/features/firstLast.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EACR,eAAe,EACf,UAAU,EACV,WAAW,EACZ,MAAM,8BAA8B,CAAC;AAwDtC;;;;;GAKG;AACH,wBAAgB,6BAA6B,IAAI,eAAe,GAAG,SAAS,CAS3E;AAED;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,IAAI,eAAe,CAKxD;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,yBAAyB,IAAI,eAAe,EAAE,CAW7D;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,IAAI,GAAG,CAM5C;AAED;;;;;GAKG;AACH,wBAAgB,4BAA4B,IAAI,GAAG,CAMlD;AAMD;;;;;GAKG;AACH,wBAAgB,yBAAyB,IAAI,WAAW,GAAG,SAAS,CASnE;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,IAAI,WAAW,CAMhD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,qBAAqB,IAAI,WAAW,EAAE,CAQrD;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,IAAI,GAAG,CAKxC;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,IAAI,GAAG,CAM9C;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,IAAI,WAAW,EAAE,CAG/C;AAMD;;;;;GAKG;AACH,wBAAgB,eAAe,IAAI,QAAQ,EAAE,CAG5C;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,IAAI,QAAQ,GAAG,SAAS,CAO7D;AAED;;;;;;;;GAQG;AACH,wBAAgB,eAAe,IAAI,QAAQ,CAM1C;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,IAAI,QAAQ,EAAE,CAQ/C;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,IAAI,GAAG,CAKrC;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,IAAI,GAAG,CAM3C;AAMD;;;;;GAKG;AACH,wBAAgB,iBAAiB,IAAI,UAAU,EAAE,CAGhD;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,IAAI,UAAU,GAAG,SAAS,CASjE;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,IAAI,UAAU,CAM9C;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,IAAI,UAAU,EAAE,CAQnD;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,IAAI,GAAG,CAKvC;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,IAAI,GAAG,CAM7C"}
|
|
@@ -3,14 +3,14 @@ local postNewRoomEarly, errorIfNoCallbacksFired, FEATURE_NAME, atLeastOneCallbac
|
|
|
3
3
|
local ____cachedClasses = require("core.cachedClasses")
|
|
4
4
|
local itemConfig = ____cachedClasses.itemConfig
|
|
5
5
|
local ____constantsFirstLast = require("core.constantsFirstLast")
|
|
6
|
-
local
|
|
6
|
+
local FIRST_CARD_TYPE = ____constantsFirstLast.FIRST_CARD_TYPE
|
|
7
7
|
local FIRST_PILL_EFFECT = ____constantsFirstLast.FIRST_PILL_EFFECT
|
|
8
8
|
local FIRST_TRINKET_TYPE = ____constantsFirstLast.FIRST_TRINKET_TYPE
|
|
9
|
-
local
|
|
9
|
+
local LAST_VANILLA_CARD_TYPE = ____constantsFirstLast.LAST_VANILLA_CARD_TYPE
|
|
10
10
|
local LAST_VANILLA_COLLECTIBLE_TYPE = ____constantsFirstLast.LAST_VANILLA_COLLECTIBLE_TYPE
|
|
11
11
|
local LAST_VANILLA_PILL_EFFECT = ____constantsFirstLast.LAST_VANILLA_PILL_EFFECT
|
|
12
12
|
local LAST_VANILLA_TRINKET_TYPE = ____constantsFirstLast.LAST_VANILLA_TRINKET_TYPE
|
|
13
|
-
local
|
|
13
|
+
local NUM_VANILLA_CARD_TYPES = ____constantsFirstLast.NUM_VANILLA_CARD_TYPES
|
|
14
14
|
local NUM_VANILLA_COLLECTIBLE_TYPES = ____constantsFirstLast.NUM_VANILLA_COLLECTIBLE_TYPES
|
|
15
15
|
local NUM_VANILLA_PILL_EFFECTS = ____constantsFirstLast.NUM_VANILLA_PILL_EFFECTS
|
|
16
16
|
local NUM_VANILLA_TRINKET_TYPES = ____constantsFirstLast.NUM_VANILLA_TRINKET_TYPES
|
|
@@ -19,7 +19,7 @@ local ModCallbackCustom = ____ModCallbackCustom.ModCallbackCustom
|
|
|
19
19
|
local ____featuresInitialized = require("featuresInitialized")
|
|
20
20
|
local errorIfFeaturesNotInitialized = ____featuresInitialized.errorIfFeaturesNotInitialized
|
|
21
21
|
local ____types = require("functions.types")
|
|
22
|
-
local
|
|
22
|
+
local asCardType = ____types.asCardType
|
|
23
23
|
local asCollectibleType = ____types.asCollectibleType
|
|
24
24
|
local asNumber = ____types.asNumber
|
|
25
25
|
local asPillEffect = ____types.asPillEffect
|
|
@@ -56,7 +56,7 @@ function ____exports.getNumModdedCollectibleTypes(self)
|
|
|
56
56
|
local lastCollectibleType = ____exports.getLastCollectibleType(nil)
|
|
57
57
|
return lastCollectibleType - LAST_VANILLA_COLLECTIBLE_TYPE
|
|
58
58
|
end
|
|
59
|
-
--- Will change depending on how many modded
|
|
59
|
+
--- Will change depending on how many modded trinkets there are.
|
|
60
60
|
--
|
|
61
61
|
-- Equal to `itemConfig.GetTrinkets().Size - 1`. (We subtract one to account for
|
|
62
62
|
-- `TrinketType.NULL`.)
|
|
@@ -75,11 +75,11 @@ end
|
|
|
75
75
|
--
|
|
76
76
|
-- This function can only be called if at least one callback has been executed. This is because not
|
|
77
77
|
-- all cards will necessarily be present when a mod first loads (due to mod load order).
|
|
78
|
-
function ____exports.
|
|
78
|
+
function ____exports.getLastCardType(self)
|
|
79
79
|
errorIfFeaturesNotInitialized(nil, FEATURE_NAME)
|
|
80
80
|
errorIfNoCallbacksFired(nil, "card")
|
|
81
|
-
local numCards = ____exports.
|
|
82
|
-
return
|
|
81
|
+
local numCards = ____exports.getNumCardTypes(nil)
|
|
82
|
+
return asCardType(nil, numCards)
|
|
83
83
|
end
|
|
84
84
|
--- Will change depending on how many modded cards there are.
|
|
85
85
|
--
|
|
@@ -87,7 +87,7 @@ end
|
|
|
87
87
|
--
|
|
88
88
|
-- This function can only be called if at least one callback has been executed. This is because not
|
|
89
89
|
-- all cards will necessarily be present when a mod first loads (due to mod load order).
|
|
90
|
-
function ____exports.
|
|
90
|
+
function ____exports.getNumCardTypes(self)
|
|
91
91
|
errorIfFeaturesNotInitialized(nil, FEATURE_NAME)
|
|
92
92
|
errorIfNoCallbacksFired(nil, "card")
|
|
93
93
|
return itemConfig:GetCards().Size - 1
|
|
@@ -195,7 +195,7 @@ function ____exports.getFirstModdedTrinketType(self)
|
|
|
195
195
|
end
|
|
196
196
|
return ____temp_1
|
|
197
197
|
end
|
|
198
|
-
--- Will change depending on how many modded
|
|
198
|
+
--- Will change depending on how many modded trinkets there are.
|
|
199
199
|
--
|
|
200
200
|
-- This is equal to the number of trinket types, since all trinket types are contiguous (unlike
|
|
201
201
|
-- collectibles).
|
|
@@ -245,27 +245,27 @@ end
|
|
|
245
245
|
--
|
|
246
246
|
-- This function can only be called if at least one callback has been executed. This is because not
|
|
247
247
|
-- all cards will necessarily be present when a mod first loads (due to mod load order).
|
|
248
|
-
function ____exports.
|
|
249
|
-
local
|
|
250
|
-
return irange(nil,
|
|
248
|
+
function ____exports.getAllCardTypes(self)
|
|
249
|
+
local lastCardType = ____exports.getLastCardType(nil)
|
|
250
|
+
return irange(nil, FIRST_CARD_TYPE, lastCardType)
|
|
251
251
|
end
|
|
252
252
|
--- Returns the first modded card sub-type, or undefined if there are no modded cards.
|
|
253
253
|
--
|
|
254
254
|
-- This function can only be called if at least one callback has been executed. This is because not
|
|
255
255
|
-- all cards will necessarily be present when a mod first loads (due to mod load order).
|
|
256
|
-
function ____exports.
|
|
256
|
+
function ____exports.getFirstModdedCardType(self)
|
|
257
257
|
errorIfFeaturesNotInitialized(nil, FEATURE_NAME)
|
|
258
258
|
errorIfNoCallbacksFired(nil, "card")
|
|
259
|
-
local
|
|
259
|
+
local firstModdedCardType = asCardType(
|
|
260
260
|
nil,
|
|
261
|
-
asNumber(nil,
|
|
261
|
+
asNumber(nil, LAST_VANILLA_CARD_TYPE) + 1
|
|
262
262
|
)
|
|
263
|
-
local itemConfigCard = itemConfig:GetCard(
|
|
263
|
+
local itemConfigCard = itemConfig:GetCard(firstModdedCardType)
|
|
264
264
|
local ____temp_2
|
|
265
265
|
if itemConfigCard == nil then
|
|
266
266
|
____temp_2 = nil
|
|
267
267
|
else
|
|
268
|
-
____temp_2 =
|
|
268
|
+
____temp_2 = firstModdedCardType
|
|
269
269
|
end
|
|
270
270
|
return ____temp_2
|
|
271
271
|
end
|
|
@@ -275,21 +275,21 @@ end
|
|
|
275
275
|
--
|
|
276
276
|
-- This function can only be called if at least one callback has been executed. This is because not
|
|
277
277
|
-- all cards will necessarily be present when a mod first loads (due to mod load order).
|
|
278
|
-
function ____exports.
|
|
279
|
-
local
|
|
280
|
-
if
|
|
278
|
+
function ____exports.getModdedCardTypes(self)
|
|
279
|
+
local firstModdedCardType = ____exports.getFirstModdedCardType(nil)
|
|
280
|
+
if firstModdedCardType == nil then
|
|
281
281
|
return {}
|
|
282
282
|
end
|
|
283
|
-
local
|
|
284
|
-
return irange(nil,
|
|
283
|
+
local lastCardType = ____exports.getLastCardType(nil)
|
|
284
|
+
return irange(nil, firstModdedCardType, lastCardType)
|
|
285
285
|
end
|
|
286
286
|
--- This function can only be called if at least one callback has been executed. This is because not
|
|
287
287
|
-- all trinkets will necessarily be present when a mod first loads (due to mod load order).
|
|
288
|
-
function ____exports.
|
|
288
|
+
function ____exports.getNumModdedCardTypes(self)
|
|
289
289
|
errorIfFeaturesNotInitialized(nil, FEATURE_NAME)
|
|
290
290
|
errorIfNoCallbacksFired(nil, "card")
|
|
291
|
-
local
|
|
292
|
-
return
|
|
291
|
+
local numCardTypes = ____exports.getNumCardTypes(nil)
|
|
292
|
+
return numCardTypes - NUM_VANILLA_CARD_TYPES
|
|
293
293
|
end
|
|
294
294
|
--- Helper function to get an array with every valid pill effect. This includes modded pill effects.
|
|
295
295
|
--
|
|
@@ -4,7 +4,7 @@ local __TS__New = ____lualib.__TS__New
|
|
|
4
4
|
local ____exports = {}
|
|
5
5
|
local useCardSoulOfIsaac, postPickupUpdateCollectible, getMapIndex, v
|
|
6
6
|
local ____isaac_2Dtypescript_2Ddefinitions = require("isaac-typescript-definitions")
|
|
7
|
-
local
|
|
7
|
+
local CardType = ____isaac_2Dtypescript_2Ddefinitions.CardType
|
|
8
8
|
local CollectibleType = ____isaac_2Dtypescript_2Ddefinitions.CollectibleType
|
|
9
9
|
local ModCallback = ____isaac_2Dtypescript_2Ddefinitions.ModCallback
|
|
10
10
|
local PickupVariant = ____isaac_2Dtypescript_2Ddefinitions.PickupVariant
|
|
@@ -45,7 +45,7 @@ v = {room = {trackedCollectibles = __TS__New(Map)}}
|
|
|
45
45
|
-- @internal
|
|
46
46
|
function ____exports.preventCollectibleRotationInit(self, mod)
|
|
47
47
|
saveDataManager(nil, FEATURE_NAME, v)
|
|
48
|
-
mod:AddCallback(ModCallback.POST_USE_CARD, useCardSoulOfIsaac,
|
|
48
|
+
mod:AddCallback(ModCallback.POST_USE_CARD, useCardSoulOfIsaac, CardType.SOUL_ISAAC)
|
|
49
49
|
mod:AddCallback(ModCallback.POST_PICKUP_UPDATE, postPickupUpdateCollectible, PickupVariant.COLLECTIBLE)
|
|
50
50
|
end
|
|
51
51
|
--- Helper function to prevent a collectible from being affected by Tainted Isaac's rotation
|
|
@@ -1,34 +1,24 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { CardType, ItemConfigCardType } from "isaac-typescript-definitions";
|
|
2
2
|
/**
|
|
3
3
|
* Helper function to get a card description from a Card enum value.
|
|
4
4
|
*
|
|
5
|
-
* For example
|
|
6
|
-
*
|
|
7
|
-
* ```ts
|
|
8
|
-
* const card = Card.FOOL;
|
|
9
|
-
* const cardDescription = getCardDescription(card); // cardDescription is "Where journey begins"
|
|
10
|
-
* ```
|
|
5
|
+
* For example, `getCardDescription(card)` returns "Where journey begins".
|
|
11
6
|
*/
|
|
12
|
-
export declare function getCardDescription(
|
|
7
|
+
export declare function getCardDescription(cardType: CardType): string;
|
|
13
8
|
/**
|
|
14
9
|
* Helper function to get a card name from a Card.
|
|
15
10
|
*
|
|
16
|
-
* For example
|
|
17
|
-
*
|
|
18
|
-
* ```ts
|
|
19
|
-
* const card = Card.FOOL;
|
|
20
|
-
* const cardName = getCardName(card); // cardName is "0 - The Fool"
|
|
21
|
-
* ```
|
|
11
|
+
* For example, `getCardName(Card.FOOL)` would return "0 - The Fool".
|
|
22
12
|
*/
|
|
23
|
-
export declare function getCardName(
|
|
24
|
-
export declare function getCardType(card: Card): ItemConfigCardType;
|
|
13
|
+
export declare function getCardName(cardType: CardType): string;
|
|
25
14
|
/**
|
|
26
|
-
* Helper function to get a set of
|
|
15
|
+
* Helper function to get a set of card types matching the `ItemConfigCardType`.
|
|
27
16
|
*
|
|
28
17
|
* This function is variadic, meaning that you can you can specify N card types to get a set
|
|
29
18
|
* containing cards that match any of the specified types.
|
|
30
19
|
*/
|
|
31
|
-
export declare function
|
|
20
|
+
export declare function getCardTypesOfType(...itemConfigCardTypes: ItemConfigCardType[]): Set<CardType>;
|
|
21
|
+
export declare function getItemConfigCardType(cardType: CardType): ItemConfigCardType;
|
|
32
22
|
/**
|
|
33
23
|
* Has an equal chance of returning any card (e.g. Fool, Reverse Fool, Wild Card, etc.).
|
|
34
24
|
*
|
|
@@ -42,14 +32,15 @@ export declare function getCardsOfType(...cardTypes: ItemConfigCardType[]): Set<
|
|
|
42
32
|
* `RNG.Next` method will be called. Default is `getRandomSeed()`.
|
|
43
33
|
* @param exceptions Optional. An array of cards to not select.
|
|
44
34
|
*/
|
|
45
|
-
export declare function getRandomCard(seedOrRNG?: Seed | RNG, exceptions?:
|
|
35
|
+
export declare function getRandomCard(seedOrRNG?: Seed | RNG, exceptions?: CardType[]): CardType;
|
|
46
36
|
/**
|
|
47
|
-
* @param
|
|
37
|
+
* @param itemConfigCardType The item config card type that represents the pool of cards to select
|
|
38
|
+
* from.
|
|
48
39
|
* @param seedOrRNG Optional. The `Seed` or `RNG` object to use. If an `RNG` object is provided, the
|
|
49
40
|
* `RNG.Next` method will be called. Default is `getRandomSeed()`.
|
|
50
41
|
* @param exceptions Optional. An array of cards to not select.
|
|
51
42
|
*/
|
|
52
|
-
export declare function
|
|
43
|
+
export declare function getRandomCardTypeOfType(itemConfigCardType: ItemConfigCardType, seedOrRNG?: Seed | RNG, exceptions?: CardType[]): CardType;
|
|
53
44
|
/**
|
|
54
45
|
* Has an equal chance of returning any rune (e.g. Rune of Hagalaz, Blank Rune, Black Rune, Soul of
|
|
55
46
|
* Isaac, etc.). This will never return a Rune Shard.
|
|
@@ -58,9 +49,9 @@ export declare function getRandomCardOfType(cardType: ItemConfigCardType, seedOr
|
|
|
58
49
|
* `RNG.Next` method will be called. Default is `getRandomSeed()`.
|
|
59
50
|
* @param exceptions Optional. An array of runes to not select.
|
|
60
51
|
*/
|
|
61
|
-
export declare function getRandomRune(seedOrRNG?: Seed | RNG, exceptions?:
|
|
52
|
+
export declare function getRandomRune(seedOrRNG?: Seed | RNG, exceptions?: CardType[]): CardType;
|
|
62
53
|
/** Helper function to get an array with every valid vanilla card sub-type. */
|
|
63
|
-
export declare function
|
|
54
|
+
export declare function getVanillaCardTypes(): CardType[];
|
|
64
55
|
/**
|
|
65
56
|
* Returns true for cards that have the following card type:
|
|
66
57
|
* - CardType.TAROT
|
|
@@ -68,23 +59,23 @@ export declare function getVanillaCards(): Card[];
|
|
|
68
59
|
* - CardType.SPECIAL
|
|
69
60
|
* - CardType.TAROT_REVERSE
|
|
70
61
|
*/
|
|
71
|
-
export declare function isCard(
|
|
72
|
-
/** Returns whether or not the given card matches the specified card type. */
|
|
73
|
-
export declare function isCardType(
|
|
62
|
+
export declare function isCard(cardType: CardType): boolean;
|
|
63
|
+
/** Returns whether or not the given card type matches the specified item config card type. */
|
|
64
|
+
export declare function isCardType(cardType: CardType, itemConfigCardType: ItemConfigCardType): boolean;
|
|
74
65
|
/** Returns true for any card or rune added by a mod. */
|
|
75
|
-
export declare function
|
|
76
|
-
/** Returns true for cards that have `
|
|
77
|
-
export declare function isPocketItemObject(
|
|
78
|
-
/** Returns true for cards that have `
|
|
79
|
-
export declare function isReverseTarotCard(
|
|
66
|
+
export declare function isModdedCardType(cardType: CardType): boolean;
|
|
67
|
+
/** Returns true for cards that have `ItemConfigCardType.SPECIAL_OBJECT`. */
|
|
68
|
+
export declare function isPocketItemObject(cardType: CardType): boolean;
|
|
69
|
+
/** Returns true for cards that have `ItemConfigCardType.TAROT_REVERSE`. */
|
|
70
|
+
export declare function isReverseTarotCard(cardType: CardType): boolean;
|
|
80
71
|
/** Returns true for cards that have `CardType.RUNE`. */
|
|
81
|
-
export declare function isRune(
|
|
72
|
+
export declare function isRune(cardType: CardType): boolean;
|
|
82
73
|
/** Returns true for cards that have `CardType.SPECIAL`. */
|
|
83
|
-
export declare function isSpecialCard(
|
|
74
|
+
export declare function isSpecialCard(cardType: CardType): boolean;
|
|
84
75
|
/** Returns true for cards that have `CardType.SUIT`. */
|
|
85
|
-
export declare function isSuitCard(
|
|
76
|
+
export declare function isSuitCard(cardType: CardType): boolean;
|
|
86
77
|
/** Returns true for cards that have `CardType.TAROT`. */
|
|
87
|
-
export declare function isTarotCard(
|
|
78
|
+
export declare function isTarotCard(cardType: CardType): boolean;
|
|
88
79
|
/** Returns true for any vanilla card or rune. */
|
|
89
|
-
export declare function
|
|
80
|
+
export declare function isVanillaCardType(cardType: CardType): boolean;
|
|
90
81
|
//# sourceMappingURL=cards.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cards.d.ts","sourceRoot":"","sources":["../../src/functions/cards.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"cards.d.ts","sourceRoot":"","sources":["../../src/functions/cards.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAkE5E;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM,CAe7D;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM,CAetD;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAChC,GAAG,mBAAmB,EAAE,kBAAkB,EAAE,GAC3C,GAAG,CAAC,QAAQ,CAAC,CAqBf;AAED,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,QAAQ,GAAG,kBAAkB,CAQ5E;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,aAAa,CAC3B,SAAS,GAAE,IAAI,GAAG,GAAqB,EACvC,UAAU,GAAE,QAAQ,EAAO,GAC1B,QAAQ,CAEV;AAED;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CACrC,kBAAkB,EAAE,kBAAkB,EACtC,SAAS,GAAE,IAAI,GAAG,GAAqB,EACvC,UAAU,GAAE,QAAQ,EAAO,GAC1B,QAAQ,CAGV;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAC3B,SAAS,GAAE,IAAI,GAAG,GAAqB,EACvC,UAAU,GAAE,QAAQ,EAAO,GAC1B,QAAQ,CAIV;AAED,8EAA8E;AAC9E,wBAAgB,mBAAmB,IAAI,QAAQ,EAAE,CAEhD;AAED;;;;;;GAMG;AACH,wBAAgB,MAAM,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAElD;AAED,8FAA8F;AAC9F,wBAAgB,UAAU,CACxB,QAAQ,EAAE,QAAQ,EAClB,kBAAkB,EAAE,kBAAkB,GACrC,OAAO,CAET;AAED,wDAAwD;AACxD,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAE5D;AAED,4EAA4E;AAC5E,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAE9D;AAED,2EAA2E;AAC3E,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAE9D;AAED,wDAAwD;AACxD,wBAAgB,MAAM,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAElD;AAED,2DAA2D;AAC3D,wBAAgB,aAAa,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAEzD;AAED,wDAAwD;AACxD,wBAAgB,UAAU,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAEtD;AAED,yDAAyD;AACzD,wBAAgB,WAAW,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAEvD;AAED,iDAAiD;AACjD,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAE7D"}
|