isaacscript-common 70.0.0 → 71.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.rollup.d.ts +16 -0
- package/dist/isaacscript-common.lua +149 -6
- package/dist/src/functions/challenges.d.ts +15 -1
- package/dist/src/functions/challenges.d.ts.map +1 -1
- package/dist/src/functions/challenges.lua +18 -0
- package/dist/src/objects/challengeBosses.d.ts +2 -0
- package/dist/src/objects/challengeBosses.d.ts.map +1 -1
- package/dist/src/objects/challengeBosses.lua +4 -2
- package/dist/src/objects/challengeCharacters.d.ts +5 -1
- package/dist/src/objects/challengeCharacters.d.ts.map +1 -1
- package/dist/src/objects/challengeCharacters.lua +4 -2
- package/dist/src/objects/challengeCollectibleTypes.d.ts +56 -0
- package/dist/src/objects/challengeCollectibleTypes.d.ts.map +1 -0
- package/dist/src/objects/challengeCollectibleTypes.lua +80 -0
- package/dist/src/objects/challengeNames.lua +1 -1
- package/dist/src/objects/challengeTrinketType.d.ts +56 -0
- package/dist/src/objects/challengeTrinketType.d.ts.map +1 -0
- package/dist/src/objects/challengeTrinketType.lua +57 -0
- package/package.json +2 -2
- package/src/functions/challenges.ts +32 -1
- package/src/objects/challengeBosses.ts +3 -1
- package/src/objects/challengeCharacters.ts +6 -2
- package/src/objects/challengeCollectibleTypes.ts +298 -0
- package/src/objects/challengeNames.ts +1 -1
- package/src/objects/challengeTrinketType.ts +56 -0
package/dist/index.rollup.d.ts
CHANGED
|
@@ -5060,6 +5060,13 @@ export declare function getChallengeBoss(challenge: Challenge): BossID;
|
|
|
5060
5060
|
*/
|
|
5061
5061
|
export declare function getChallengeCharacter(challenge: Challenge): PlayerType;
|
|
5062
5062
|
|
|
5063
|
+
/**
|
|
5064
|
+
* Get the extra starting collectibles for a challenge. This will only work for vanilla challenges.
|
|
5065
|
+
*
|
|
5066
|
+
* For modded challenges, an empty array will be returned.
|
|
5067
|
+
*/
|
|
5068
|
+
export declare function getChallengeCollectibleTypes(challenge: Challenge): readonly CollectibleType[];
|
|
5069
|
+
|
|
5063
5070
|
/**
|
|
5064
5071
|
* Get the proper name for a `Challenge` enum. This will only work for vanilla challenges.
|
|
5065
5072
|
*
|
|
@@ -5067,6 +5074,15 @@ export declare function getChallengeCharacter(challenge: Challenge): PlayerType;
|
|
|
5067
5074
|
*/
|
|
5068
5075
|
export declare function getChallengeName(challenge: Challenge): string;
|
|
5069
5076
|
|
|
5077
|
+
/**
|
|
5078
|
+
* Get the extra starting trinket for a challenge. This will only work for vanilla challenges.
|
|
5079
|
+
*
|
|
5080
|
+
* If a challenge does not grant a starting trinket, `undefined` will be returned.
|
|
5081
|
+
*
|
|
5082
|
+
* For modded challenges, `undefined` will be returned.
|
|
5083
|
+
*/
|
|
5084
|
+
export declare function getChallengeTrinketType(challenge: Challenge): TrinketType | undefined;
|
|
5085
|
+
|
|
5070
5086
|
/** Helper function to get the numerical damage multiplier for a character. */
|
|
5071
5087
|
export declare function getCharacterDamageMultiplier(character: PlayerType, hasWhoreOfBabylon?: boolean): float;
|
|
5072
5088
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
--[[
|
|
2
2
|
|
|
3
|
-
isaacscript-common
|
|
3
|
+
isaacscript-common 71.0.1
|
|
4
4
|
|
|
5
5
|
This is the "isaacscript-common" library, which was created with the IsaacScript tool.
|
|
6
6
|
|
|
@@ -15339,8 +15339,8 @@ ____exports.Challenge.CURSED = 10
|
|
|
15339
15339
|
____exports.Challenge[____exports.Challenge.CURSED] = "CURSED"
|
|
15340
15340
|
____exports.Challenge.GLASS_CANNON = 11
|
|
15341
15341
|
____exports.Challenge[____exports.Challenge.GLASS_CANNON] = "GLASS_CANNON"
|
|
15342
|
-
____exports.Challenge.
|
|
15343
|
-
____exports.Challenge[____exports.Challenge.
|
|
15342
|
+
____exports.Challenge.WHEN_LIFE_GIVES_YOU_LEMONS = 12
|
|
15343
|
+
____exports.Challenge[____exports.Challenge.WHEN_LIFE_GIVES_YOU_LEMONS] = "WHEN_LIFE_GIVES_YOU_LEMONS"
|
|
15344
15344
|
____exports.Challenge.BEANS = 13
|
|
15345
15345
|
____exports.Challenge[____exports.Challenge.BEANS] = "BEANS"
|
|
15346
15346
|
____exports.Challenge.ITS_IN_THE_CARDS = 14
|
|
@@ -54684,7 +54684,7 @@ ____exports.CHALLENGE_BOSSES = {
|
|
|
54684
54684
|
[Challenge.DEMO_MAN] = BossID.MOMS_HEART,
|
|
54685
54685
|
[Challenge.CURSED] = BossID.MOM,
|
|
54686
54686
|
[Challenge.GLASS_CANNON] = BossID.SATAN,
|
|
54687
|
-
[Challenge.
|
|
54687
|
+
[Challenge.WHEN_LIFE_GIVES_YOU_LEMONS] = BossID.MOM,
|
|
54688
54688
|
[Challenge.BEANS] = BossID.MOM,
|
|
54689
54689
|
[Challenge.ITS_IN_THE_CARDS] = BossID.MOM,
|
|
54690
54690
|
[Challenge.SLOW_ROLL] = BossID.MOM,
|
|
@@ -54740,7 +54740,7 @@ ____exports.CHALLENGE_CHARACTERS = {
|
|
|
54740
54740
|
[Challenge.DEMO_MAN] = ____exports.DEFAULT_CHALLENGE_CHARACTER,
|
|
54741
54741
|
[Challenge.CURSED] = PlayerType.MAGDALENE,
|
|
54742
54742
|
[Challenge.GLASS_CANNON] = PlayerType.JUDAS,
|
|
54743
|
-
[Challenge.
|
|
54743
|
+
[Challenge.WHEN_LIFE_GIVES_YOU_LEMONS] = ____exports.DEFAULT_CHALLENGE_CHARACTER,
|
|
54744
54744
|
[Challenge.BEANS] = ____exports.DEFAULT_CHALLENGE_CHARACTER,
|
|
54745
54745
|
[Challenge.ITS_IN_THE_CARDS] = ____exports.DEFAULT_CHALLENGE_CHARACTER,
|
|
54746
54746
|
[Challenge.SLOW_ROLL] = ____exports.DEFAULT_CHALLENGE_CHARACTER,
|
|
@@ -54775,6 +54775,84 @@ ____exports.CHALLENGE_CHARACTERS = {
|
|
|
54775
54775
|
[Challenge.RED_REDEMPTION] = PlayerType.JACOB_B,
|
|
54776
54776
|
[Challenge.DELETE_THIS] = ____exports.DEFAULT_CHALLENGE_CHARACTER
|
|
54777
54777
|
}
|
|
54778
|
+
return ____exports
|
|
54779
|
+
end,
|
|
54780
|
+
["src.objects.challengeCollectibleTypes"] = function(...)
|
|
54781
|
+
local ____exports = {}
|
|
54782
|
+
local ____isaac_2Dtypescript_2Ddefinitions = require("lua_modules.isaac-typescript-definitions.dist.src.index")
|
|
54783
|
+
local Challenge = ____isaac_2Dtypescript_2Ddefinitions.Challenge
|
|
54784
|
+
local CollectibleType = ____isaac_2Dtypescript_2Ddefinitions.CollectibleType
|
|
54785
|
+
____exports.CHALLENGE_COLLECTIBLE_TYPES = {
|
|
54786
|
+
[Challenge.NULL] = {},
|
|
54787
|
+
[Challenge.PITCH_BLACK] = {},
|
|
54788
|
+
[Challenge.HIGH_BROW] = {CollectibleType.NUMBER_ONE, CollectibleType.BUTT_BOMBS, CollectibleType.E_COLI, CollectibleType.FLUSH},
|
|
54789
|
+
[Challenge.HEAD_TRAUMA] = {CollectibleType.SMALL_ROCK, CollectibleType.IRON_BAR, CollectibleType.TINY_PLANET, CollectibleType.SOY_MILK},
|
|
54790
|
+
[Challenge.DARKNESS_FALLS] = {CollectibleType.PENTAGRAM, CollectibleType.RAZOR_BLADE, CollectibleType.SACRIFICIAL_DAGGER, CollectibleType.DARK_MATTER},
|
|
54791
|
+
[Challenge.TANK] = {CollectibleType.BUCKET_OF_LARD, CollectibleType.INFAMY, CollectibleType.THUNDER_THIGHS},
|
|
54792
|
+
[Challenge.SOLAR_SYSTEM] = {CollectibleType.HALO_OF_FLIES, CollectibleType.TRANSCENDENCE, CollectibleType.DISTANT_ADMIRATION, CollectibleType.FOREVER_ALONE},
|
|
54793
|
+
[Challenge.SUICIDE_KING] = {CollectibleType.MY_REFLECTION, CollectibleType.MR_MEGA, CollectibleType.IPECAC},
|
|
54794
|
+
[Challenge.CAT_GOT_YOUR_TONGUE] = {CollectibleType.GUPPYS_TAIL, CollectibleType.GUPPYS_HEAD, CollectibleType.GUPPYS_HAIRBALL},
|
|
54795
|
+
[Challenge.DEMO_MAN] = {CollectibleType.DR_FETUS, CollectibleType.REMOTE_DETONATOR},
|
|
54796
|
+
[Challenge.CURSED] = {CollectibleType.RAW_LIVER, CollectibleType.COMPASS, CollectibleType.TREASURE_MAP, CollectibleType.BLUE_MAP},
|
|
54797
|
+
[Challenge.GLASS_CANNON] = {CollectibleType.LOKIS_HORNS, CollectibleType.EPIC_FETUS},
|
|
54798
|
+
[Challenge.WHEN_LIFE_GIVES_YOU_LEMONS] = {CollectibleType.LEMON_MISHAP, CollectibleType.NINE_VOLT, CollectibleType.HABIT},
|
|
54799
|
+
[Challenge.BEANS] = {
|
|
54800
|
+
CollectibleType.BEAN,
|
|
54801
|
+
CollectibleType.NINE_VOLT,
|
|
54802
|
+
CollectibleType.BLACK_BEAN,
|
|
54803
|
+
CollectibleType.PYRO,
|
|
54804
|
+
CollectibleType.BUTT_BOMBS
|
|
54805
|
+
},
|
|
54806
|
+
[Challenge.ITS_IN_THE_CARDS] = {CollectibleType.BATTERY, CollectibleType.DECK_OF_CARDS, CollectibleType.NINE_VOLT, CollectibleType.STARTER_DECK},
|
|
54807
|
+
[Challenge.SLOW_ROLL] = {CollectibleType.MY_REFLECTION, CollectibleType.CUPIDS_ARROW, CollectibleType.POLYPHEMUS},
|
|
54808
|
+
[Challenge.COMPUTER_SAVY] = {CollectibleType.SPOON_BENDER, CollectibleType.TECHNOLOGY, CollectibleType.TECHNOLOGY_2},
|
|
54809
|
+
[Challenge.WAKA_WAKA] = {CollectibleType.ANTI_GRAVITY, CollectibleType.STRANGE_ATTRACTOR},
|
|
54810
|
+
[Challenge.HOST] = {CollectibleType.MULLIGAN, CollectibleType.SPIDERBABY},
|
|
54811
|
+
[Challenge.FAMILY_MAN] = {
|
|
54812
|
+
CollectibleType.BROTHER_BOBBY,
|
|
54813
|
+
CollectibleType.SISTER_MAGGY,
|
|
54814
|
+
CollectibleType.DADS_KEY,
|
|
54815
|
+
CollectibleType.BFFS,
|
|
54816
|
+
CollectibleType.ROTTEN_BABY
|
|
54817
|
+
},
|
|
54818
|
+
[Challenge.PURIST] = {},
|
|
54819
|
+
[Challenge.XXXXXXXXL] = {},
|
|
54820
|
+
[Challenge.SPEED] = {},
|
|
54821
|
+
[Challenge.BLUE_BOMBER] = {CollectibleType.BROTHER_BOBBY, CollectibleType.KAMIKAZE, CollectibleType.MR_MEGA, CollectibleType.PYROMANIAC},
|
|
54822
|
+
[Challenge.PAY_TO_PLAY] = {CollectibleType.SACK_OF_PENNIES, CollectibleType.MONEY_EQUALS_POWER},
|
|
54823
|
+
[Challenge.HAVE_A_HEART] = {CollectibleType.CHARM_OF_THE_VAMPIRE},
|
|
54824
|
+
[Challenge.I_RULE] = {CollectibleType.LADDER, CollectibleType.MOMS_KNIFE, CollectibleType.TRINITY_SHIELD, CollectibleType.BOOMERANG},
|
|
54825
|
+
[Challenge.BRAINS] = {CollectibleType.BOBS_BRAIN, CollectibleType.BOBS_BRAIN, CollectibleType.BOBS_BRAIN, CollectibleType.THUNDER_THIGHS},
|
|
54826
|
+
[Challenge.PRIDE_DAY] = {CollectibleType.RAINBOW_BABY, CollectibleType.THREE_DOLLAR_BILL},
|
|
54827
|
+
[Challenge.ONANS_STREAK] = {CollectibleType.CHOCOLATE_MILK},
|
|
54828
|
+
[Challenge.GUARDIAN] = {CollectibleType.HOLY_GRAIL, CollectibleType.ISAACS_HEART, CollectibleType.PUNCHING_BAG, CollectibleType.SPEAR_OF_DESTINY},
|
|
54829
|
+
[Challenge.BACKASSWARDS] = {},
|
|
54830
|
+
[Challenge.APRILS_FOOL] = {},
|
|
54831
|
+
[Challenge.POKEY_MANS] = {CollectibleType.MOMS_EYESHADOW, CollectibleType.FRIEND_BALL},
|
|
54832
|
+
[Challenge.ULTRA_HARD] = {CollectibleType.BOOK_OF_REVELATIONS, CollectibleType.CAFFEINE_PILL},
|
|
54833
|
+
[Challenge.PONG] = {CollectibleType.CUPIDS_ARROW, CollectibleType.RUBBER_CEMENT},
|
|
54834
|
+
[Challenge.SCAT_MAN] = {
|
|
54835
|
+
CollectibleType.SKATOLE,
|
|
54836
|
+
CollectibleType.POOP,
|
|
54837
|
+
CollectibleType.NINE_VOLT,
|
|
54838
|
+
CollectibleType.BUTT_BOMBS,
|
|
54839
|
+
CollectibleType.BUTT_BOMBS,
|
|
54840
|
+
CollectibleType.BUTT_BOMBS,
|
|
54841
|
+
CollectibleType.E_COLI,
|
|
54842
|
+
CollectibleType.BFFS,
|
|
54843
|
+
CollectibleType.THUNDER_THIGHS,
|
|
54844
|
+
CollectibleType.DIRTY_MIND
|
|
54845
|
+
},
|
|
54846
|
+
[Challenge.BLOODY_MARY] = {CollectibleType.BOOK_OF_BELIAL, CollectibleType.BLOOD_BAG, CollectibleType.ANEMIC, CollectibleType.BLOOD_OATH},
|
|
54847
|
+
[Challenge.BAPTISM_BY_FIRE] = {CollectibleType.GUPPYS_PAW, CollectibleType.SCHOOLBAG, CollectibleType.URN_OF_SOULS},
|
|
54848
|
+
[Challenge.ISAACS_AWAKENING] = {CollectibleType.TRINITY_SHIELD, CollectibleType.SPIRIT_SWORD, CollectibleType.MOMS_BRACELET},
|
|
54849
|
+
[Challenge.SEEING_DOUBLE] = {245},
|
|
54850
|
+
[Challenge.PICA_RUN] = {CollectibleType.MOMS_PURSE, CollectibleType.MOMS_BOX, CollectibleType.MARBLES},
|
|
54851
|
+
[Challenge.HOT_POTATO] = {},
|
|
54852
|
+
[Challenge.CANTRIPPED] = {},
|
|
54853
|
+
[Challenge.RED_REDEMPTION] = {CollectibleType.DADS_KEY},
|
|
54854
|
+
[Challenge.DELETE_THIS] = {CollectibleType.TMTRAINER}
|
|
54855
|
+
}
|
|
54778
54856
|
return ____exports
|
|
54779
54857
|
end,
|
|
54780
54858
|
["src.objects.challengeNames"] = function(...)
|
|
@@ -54795,7 +54873,7 @@ ____exports.CHALLENGE_NAMES = {
|
|
|
54795
54873
|
[Challenge.DEMO_MAN] = "Demo Man",
|
|
54796
54874
|
[Challenge.CURSED] = "Cursed!",
|
|
54797
54875
|
[Challenge.GLASS_CANNON] = "Glass Cannon",
|
|
54798
|
-
[Challenge.
|
|
54876
|
+
[Challenge.WHEN_LIFE_GIVES_YOU_LEMONS] = "When Life Gives You Lemons",
|
|
54799
54877
|
[Challenge.BEANS] = "Beans!",
|
|
54800
54878
|
[Challenge.ITS_IN_THE_CARDS] = "It's In The Cards",
|
|
54801
54879
|
[Challenge.SLOW_ROLL] = "Slow Roll",
|
|
@@ -54830,6 +54908,61 @@ ____exports.CHALLENGE_NAMES = {
|
|
|
54830
54908
|
[Challenge.RED_REDEMPTION] = "Red Redemption",
|
|
54831
54909
|
[Challenge.DELETE_THIS] = "DELETE THIS"
|
|
54832
54910
|
}
|
|
54911
|
+
return ____exports
|
|
54912
|
+
end,
|
|
54913
|
+
["src.objects.challengeTrinketType"] = function(...)
|
|
54914
|
+
local ____exports = {}
|
|
54915
|
+
local ____isaac_2Dtypescript_2Ddefinitions = require("lua_modules.isaac-typescript-definitions.dist.src.index")
|
|
54916
|
+
local Challenge = ____isaac_2Dtypescript_2Ddefinitions.Challenge
|
|
54917
|
+
local TrinketType = ____isaac_2Dtypescript_2Ddefinitions.TrinketType
|
|
54918
|
+
____exports.CHALLENGE_TRINKET_TYPE = {
|
|
54919
|
+
[Challenge.NULL] = nil,
|
|
54920
|
+
[Challenge.PITCH_BLACK] = nil,
|
|
54921
|
+
[Challenge.HIGH_BROW] = TrinketType.PETRIFIED_POOP,
|
|
54922
|
+
[Challenge.HEAD_TRAUMA] = nil,
|
|
54923
|
+
[Challenge.DARKNESS_FALLS] = nil,
|
|
54924
|
+
[Challenge.TANK] = nil,
|
|
54925
|
+
[Challenge.SOLAR_SYSTEM] = nil,
|
|
54926
|
+
[Challenge.SUICIDE_KING] = nil,
|
|
54927
|
+
[Challenge.CAT_GOT_YOUR_TONGUE] = nil,
|
|
54928
|
+
[Challenge.DEMO_MAN] = TrinketType.MATCH_STICK,
|
|
54929
|
+
[Challenge.CURSED] = TrinketType.CHILDS_HEART,
|
|
54930
|
+
[Challenge.GLASS_CANNON] = nil,
|
|
54931
|
+
[Challenge.WHEN_LIFE_GIVES_YOU_LEMONS] = nil,
|
|
54932
|
+
[Challenge.BEANS] = nil,
|
|
54933
|
+
[Challenge.ITS_IN_THE_CARDS] = nil,
|
|
54934
|
+
[Challenge.SLOW_ROLL] = nil,
|
|
54935
|
+
[Challenge.COMPUTER_SAVY] = nil,
|
|
54936
|
+
[Challenge.WAKA_WAKA] = nil,
|
|
54937
|
+
[Challenge.HOST] = TrinketType.TICK,
|
|
54938
|
+
[Challenge.FAMILY_MAN] = nil,
|
|
54939
|
+
[Challenge.PURIST] = nil,
|
|
54940
|
+
[Challenge.XXXXXXXXL] = nil,
|
|
54941
|
+
[Challenge.SPEED] = nil,
|
|
54942
|
+
[Challenge.BLUE_BOMBER] = nil,
|
|
54943
|
+
[Challenge.PAY_TO_PLAY] = nil,
|
|
54944
|
+
[Challenge.HAVE_A_HEART] = nil,
|
|
54945
|
+
[Challenge.I_RULE] = nil,
|
|
54946
|
+
[Challenge.BRAINS] = nil,
|
|
54947
|
+
[Challenge.PRIDE_DAY] = TrinketType.RAINBOW_WORM,
|
|
54948
|
+
[Challenge.ONANS_STREAK] = nil,
|
|
54949
|
+
[Challenge.GUARDIAN] = nil,
|
|
54950
|
+
[Challenge.BACKASSWARDS] = nil,
|
|
54951
|
+
[Challenge.APRILS_FOOL] = nil,
|
|
54952
|
+
[Challenge.POKEY_MANS] = nil,
|
|
54953
|
+
[Challenge.ULTRA_HARD] = nil,
|
|
54954
|
+
[Challenge.PONG] = nil,
|
|
54955
|
+
[Challenge.SCAT_MAN] = TrinketType.MYSTERIOUS_CANDY,
|
|
54956
|
+
[Challenge.BLOODY_MARY] = TrinketType.CHILDS_HEART,
|
|
54957
|
+
[Challenge.BAPTISM_BY_FIRE] = TrinketType.MAGGYS_FAITH,
|
|
54958
|
+
[Challenge.ISAACS_AWAKENING] = nil,
|
|
54959
|
+
[Challenge.SEEING_DOUBLE] = nil,
|
|
54960
|
+
[Challenge.PICA_RUN] = nil,
|
|
54961
|
+
[Challenge.HOT_POTATO] = nil,
|
|
54962
|
+
[Challenge.CANTRIPPED] = nil,
|
|
54963
|
+
[Challenge.RED_REDEMPTION] = nil,
|
|
54964
|
+
[Challenge.DELETE_THIS] = nil
|
|
54965
|
+
}
|
|
54833
54966
|
return ____exports
|
|
54834
54967
|
end,
|
|
54835
54968
|
["src.functions.challenges"] = function(...)
|
|
@@ -54844,9 +54977,13 @@ local DEFAULT_CHALLENGE_BOSS_ID = ____challengeBosses.DEFAULT_CHALLENGE_BOSS_ID
|
|
|
54844
54977
|
local ____challengeCharacters = require("src.objects.challengeCharacters")
|
|
54845
54978
|
local CHALLENGE_CHARACTERS = ____challengeCharacters.CHALLENGE_CHARACTERS
|
|
54846
54979
|
local DEFAULT_CHALLENGE_CHARACTER = ____challengeCharacters.DEFAULT_CHALLENGE_CHARACTER
|
|
54980
|
+
local ____challengeCollectibleTypes = require("src.objects.challengeCollectibleTypes")
|
|
54981
|
+
local CHALLENGE_COLLECTIBLE_TYPES = ____challengeCollectibleTypes.CHALLENGE_COLLECTIBLE_TYPES
|
|
54847
54982
|
local ____challengeNames = require("src.objects.challengeNames")
|
|
54848
54983
|
local CHALLENGE_NAMES = ____challengeNames.CHALLENGE_NAMES
|
|
54849
54984
|
local DEFAULT_CHALLENGE_NAME = ____challengeNames.DEFAULT_CHALLENGE_NAME
|
|
54985
|
+
local ____challengeTrinketType = require("src.objects.challengeTrinketType")
|
|
54986
|
+
local CHALLENGE_TRINKET_TYPE = ____challengeTrinketType.CHALLENGE_TRINKET_TYPE
|
|
54850
54987
|
local ____log = require("src.functions.log")
|
|
54851
54988
|
local log = ____log.log
|
|
54852
54989
|
function ____exports.onAnyChallenge(self)
|
|
@@ -54868,10 +55005,16 @@ function ____exports.getChallengeCharacter(self, challenge)
|
|
|
54868
55005
|
local challengeCharacter = CHALLENGE_CHARACTERS[challenge]
|
|
54869
55006
|
return challengeCharacter or DEFAULT_CHALLENGE_CHARACTER
|
|
54870
55007
|
end
|
|
55008
|
+
function ____exports.getChallengeCollectibleTypes(self, challenge)
|
|
55009
|
+
return CHALLENGE_COLLECTIBLE_TYPES[challenge]
|
|
55010
|
+
end
|
|
54871
55011
|
function ____exports.getChallengeName(self, challenge)
|
|
54872
55012
|
local challengeName = CHALLENGE_NAMES[challenge]
|
|
54873
55013
|
return challengeName or DEFAULT_CHALLENGE_NAME
|
|
54874
55014
|
end
|
|
55015
|
+
function ____exports.getChallengeTrinketType(self, challenge)
|
|
55016
|
+
return CHALLENGE_TRINKET_TYPE[challenge]
|
|
55017
|
+
end
|
|
54875
55018
|
function ____exports.onChallenge(self, ...)
|
|
54876
55019
|
local challenges = {...}
|
|
54877
55020
|
local challenge = Isaac.GetChallenge()
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { BossID, PlayerType } from "isaac-typescript-definitions";
|
|
1
|
+
import type { BossID, CollectibleType, PlayerType, TrinketType } from "isaac-typescript-definitions";
|
|
2
2
|
import { Challenge } from "isaac-typescript-definitions";
|
|
3
3
|
/**
|
|
4
4
|
* Helper function to clear the current challenge, which will restart the run on a new random
|
|
@@ -24,12 +24,26 @@ export declare function getChallengeBoss(challenge: Challenge): BossID;
|
|
|
24
24
|
* For modded challenges, `PlayerType.ISAAC` (0) will be returned.
|
|
25
25
|
*/
|
|
26
26
|
export declare function getChallengeCharacter(challenge: Challenge): PlayerType;
|
|
27
|
+
/**
|
|
28
|
+
* Get the extra starting collectibles for a challenge. This will only work for vanilla challenges.
|
|
29
|
+
*
|
|
30
|
+
* For modded challenges, an empty array will be returned.
|
|
31
|
+
*/
|
|
32
|
+
export declare function getChallengeCollectibleTypes(challenge: Challenge): readonly CollectibleType[];
|
|
27
33
|
/**
|
|
28
34
|
* Get the proper name for a `Challenge` enum. This will only work for vanilla challenges.
|
|
29
35
|
*
|
|
30
36
|
* For modded challenges, "Unknown" will be returned.
|
|
31
37
|
*/
|
|
32
38
|
export declare function getChallengeName(challenge: Challenge): string;
|
|
39
|
+
/**
|
|
40
|
+
* Get the extra starting trinket for a challenge. This will only work for vanilla challenges.
|
|
41
|
+
*
|
|
42
|
+
* If a challenge does not grant a starting trinket, `undefined` will be returned.
|
|
43
|
+
*
|
|
44
|
+
* For modded challenges, `undefined` will be returned.
|
|
45
|
+
*/
|
|
46
|
+
export declare function getChallengeTrinketType(challenge: Challenge): TrinketType | undefined;
|
|
33
47
|
/** Helper function to see if the player is playing any challenge. */
|
|
34
48
|
export declare function onAnyChallenge(): boolean;
|
|
35
49
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"challenges.d.ts","sourceRoot":"","sources":["../../../src/functions/challenges.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"challenges.d.ts","sourceRoot":"","sources":["../../../src/functions/challenges.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,MAAM,EACN,eAAe,EACf,UAAU,EACV,WAAW,EACZ,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAiBzD;;;;;;;GAOG;AACH,wBAAgB,cAAc,IAAI,IAAI,CAQrC;AAED;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,SAAS,GAAG,MAAM,CAK7D;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,SAAS,GAAG,UAAU,CAKtE;AAED;;;;GAIG;AACH,wBAAgB,4BAA4B,CAC1C,SAAS,EAAE,SAAS,GACnB,SAAS,eAAe,EAAE,CAE5B;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,SAAS,GAAG,MAAM,CAK7D;AAED;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CACrC,SAAS,EAAE,SAAS,GACnB,WAAW,GAAG,SAAS,CAEzB;AAED,qEAAqE;AACrE,wBAAgB,cAAc,IAAI,OAAO,CAGxC;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,GAAG,UAAU,EAAE,SAAS,EAAE,GAAG,OAAO,CAG/D;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI,CAQvD"}
|
|
@@ -9,9 +9,13 @@ local DEFAULT_CHALLENGE_BOSS_ID = ____challengeBosses.DEFAULT_CHALLENGE_BOSS_ID
|
|
|
9
9
|
local ____challengeCharacters = require("src.objects.challengeCharacters")
|
|
10
10
|
local CHALLENGE_CHARACTERS = ____challengeCharacters.CHALLENGE_CHARACTERS
|
|
11
11
|
local DEFAULT_CHALLENGE_CHARACTER = ____challengeCharacters.DEFAULT_CHALLENGE_CHARACTER
|
|
12
|
+
local ____challengeCollectibleTypes = require("src.objects.challengeCollectibleTypes")
|
|
13
|
+
local CHALLENGE_COLLECTIBLE_TYPES = ____challengeCollectibleTypes.CHALLENGE_COLLECTIBLE_TYPES
|
|
12
14
|
local ____challengeNames = require("src.objects.challengeNames")
|
|
13
15
|
local CHALLENGE_NAMES = ____challengeNames.CHALLENGE_NAMES
|
|
14
16
|
local DEFAULT_CHALLENGE_NAME = ____challengeNames.DEFAULT_CHALLENGE_NAME
|
|
17
|
+
local ____challengeTrinketType = require("src.objects.challengeTrinketType")
|
|
18
|
+
local CHALLENGE_TRINKET_TYPE = ____challengeTrinketType.CHALLENGE_TRINKET_TYPE
|
|
15
19
|
local ____log = require("src.functions.log")
|
|
16
20
|
local log = ____log.log
|
|
17
21
|
--- Helper function to see if the player is playing any challenge.
|
|
@@ -49,6 +53,12 @@ function ____exports.getChallengeCharacter(self, challenge)
|
|
|
49
53
|
local challengeCharacter = CHALLENGE_CHARACTERS[challenge]
|
|
50
54
|
return challengeCharacter or DEFAULT_CHALLENGE_CHARACTER
|
|
51
55
|
end
|
|
56
|
+
--- Get the extra starting collectibles for a challenge. This will only work for vanilla challenges.
|
|
57
|
+
--
|
|
58
|
+
-- For modded challenges, an empty array will be returned.
|
|
59
|
+
function ____exports.getChallengeCollectibleTypes(self, challenge)
|
|
60
|
+
return CHALLENGE_COLLECTIBLE_TYPES[challenge]
|
|
61
|
+
end
|
|
52
62
|
--- Get the proper name for a `Challenge` enum. This will only work for vanilla challenges.
|
|
53
63
|
--
|
|
54
64
|
-- For modded challenges, "Unknown" will be returned.
|
|
@@ -56,6 +66,14 @@ function ____exports.getChallengeName(self, challenge)
|
|
|
56
66
|
local challengeName = CHALLENGE_NAMES[challenge]
|
|
57
67
|
return challengeName or DEFAULT_CHALLENGE_NAME
|
|
58
68
|
end
|
|
69
|
+
--- Get the extra starting trinket for a challenge. This will only work for vanilla challenges.
|
|
70
|
+
--
|
|
71
|
+
-- If a challenge does not grant a starting trinket, `undefined` will be returned.
|
|
72
|
+
--
|
|
73
|
+
-- For modded challenges, `undefined` will be returned.
|
|
74
|
+
function ____exports.getChallengeTrinketType(self, challenge)
|
|
75
|
+
return CHALLENGE_TRINKET_TYPE[challenge]
|
|
76
|
+
end
|
|
59
77
|
--- Helper function to check to see if the player is playing a particular challenge.
|
|
60
78
|
--
|
|
61
79
|
-- This function is variadic, meaning that you can specify as many challenges as you want to check
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { BossID } from "isaac-typescript-definitions";
|
|
2
2
|
export declare const DEFAULT_CHALLENGE_BOSS_ID = BossID.MOM;
|
|
3
3
|
/**
|
|
4
|
+
* Contains the boss goal for each challenge.
|
|
5
|
+
*
|
|
4
6
|
* Taken from the "challenges.xml" file.
|
|
5
7
|
*
|
|
6
8
|
* @see https://bindingofisaacrebirth.fandom.com/wiki/Challenges
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"challengeBosses.d.ts","sourceRoot":"","sources":["../../../src/objects/challengeBosses.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAa,MAAM,8BAA8B,CAAC;AAEjE,eAAO,MAAM,yBAAyB,aAAa,CAAC;AAEpD
|
|
1
|
+
{"version":3,"file":"challengeBosses.d.ts","sourceRoot":"","sources":["../../../src/objects/challengeBosses.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAa,MAAM,8BAA8B,CAAC;AAEjE,eAAO,MAAM,yBAAyB,aAAa,CAAC;AAEpD;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+CiB,CAAC"}
|
|
@@ -3,7 +3,9 @@ local ____isaac_2Dtypescript_2Ddefinitions = require("isaac-typescript-definitio
|
|
|
3
3
|
local BossID = ____isaac_2Dtypescript_2Ddefinitions.BossID
|
|
4
4
|
local Challenge = ____isaac_2Dtypescript_2Ddefinitions.Challenge
|
|
5
5
|
____exports.DEFAULT_CHALLENGE_BOSS_ID = BossID.MOM
|
|
6
|
-
---
|
|
6
|
+
--- Contains the boss goal for each challenge.
|
|
7
|
+
--
|
|
8
|
+
-- Taken from the "challenges.xml" file.
|
|
7
9
|
--
|
|
8
10
|
-- @see https ://bindingofisaacrebirth.fandom.com/wiki/Challenges
|
|
9
11
|
____exports.CHALLENGE_BOSSES = {
|
|
@@ -19,7 +21,7 @@ ____exports.CHALLENGE_BOSSES = {
|
|
|
19
21
|
[Challenge.DEMO_MAN] = BossID.MOMS_HEART,
|
|
20
22
|
[Challenge.CURSED] = BossID.MOM,
|
|
21
23
|
[Challenge.GLASS_CANNON] = BossID.SATAN,
|
|
22
|
-
[Challenge.
|
|
24
|
+
[Challenge.WHEN_LIFE_GIVES_YOU_LEMONS] = BossID.MOM,
|
|
23
25
|
[Challenge.BEANS] = BossID.MOM,
|
|
24
26
|
[Challenge.ITS_IN_THE_CARDS] = BossID.MOM,
|
|
25
27
|
[Challenge.SLOW_ROLL] = BossID.MOM,
|
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
import { PlayerType } from "isaac-typescript-definitions";
|
|
2
2
|
export declare const DEFAULT_CHALLENGE_CHARACTER = PlayerType.ISAAC;
|
|
3
|
-
/**
|
|
3
|
+
/**
|
|
4
|
+
* Contains the starting character for each challenge.
|
|
5
|
+
*
|
|
6
|
+
* Taken from the "challenges.xml" file.
|
|
7
|
+
*/
|
|
4
8
|
export declare const CHALLENGE_CHARACTERS: {
|
|
5
9
|
readonly 0: PlayerType.ISAAC;
|
|
6
10
|
readonly 1: PlayerType.ISAAC;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"challengeCharacters.d.ts","sourceRoot":"","sources":["../../../src/objects/challengeCharacters.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAErE,eAAO,MAAM,2BAA2B,mBAAmB,CAAC;AAE5D
|
|
1
|
+
{"version":3,"file":"challengeCharacters.d.ts","sourceRoot":"","sources":["../../../src/objects/challengeCharacters.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAErE,eAAO,MAAM,2BAA2B,mBAAmB,CAAC;AAE5D;;;;GAIG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+CiB,CAAC"}
|
|
@@ -3,7 +3,9 @@ local ____isaac_2Dtypescript_2Ddefinitions = require("isaac-typescript-definitio
|
|
|
3
3
|
local Challenge = ____isaac_2Dtypescript_2Ddefinitions.Challenge
|
|
4
4
|
local PlayerType = ____isaac_2Dtypescript_2Ddefinitions.PlayerType
|
|
5
5
|
____exports.DEFAULT_CHALLENGE_CHARACTER = PlayerType.ISAAC
|
|
6
|
-
---
|
|
6
|
+
--- Contains the starting character for each challenge.
|
|
7
|
+
--
|
|
8
|
+
-- Taken from the "challenges.xml" file.
|
|
7
9
|
____exports.CHALLENGE_CHARACTERS = {
|
|
8
10
|
[Challenge.NULL] = ____exports.DEFAULT_CHALLENGE_CHARACTER,
|
|
9
11
|
[Challenge.PITCH_BLACK] = ____exports.DEFAULT_CHALLENGE_CHARACTER,
|
|
@@ -17,7 +19,7 @@ ____exports.CHALLENGE_CHARACTERS = {
|
|
|
17
19
|
[Challenge.DEMO_MAN] = ____exports.DEFAULT_CHALLENGE_CHARACTER,
|
|
18
20
|
[Challenge.CURSED] = PlayerType.MAGDALENE,
|
|
19
21
|
[Challenge.GLASS_CANNON] = PlayerType.JUDAS,
|
|
20
|
-
[Challenge.
|
|
22
|
+
[Challenge.WHEN_LIFE_GIVES_YOU_LEMONS] = ____exports.DEFAULT_CHALLENGE_CHARACTER,
|
|
21
23
|
[Challenge.BEANS] = ____exports.DEFAULT_CHALLENGE_CHARACTER,
|
|
22
24
|
[Challenge.ITS_IN_THE_CARDS] = ____exports.DEFAULT_CHALLENGE_CHARACTER,
|
|
23
25
|
[Challenge.SLOW_ROLL] = ____exports.DEFAULT_CHALLENGE_CHARACTER,
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { CollectibleType } from "isaac-typescript-definitions";
|
|
2
|
+
/**
|
|
3
|
+
* Contains the extra starting collectibles for each challenge. Challenges that do not grant extra
|
|
4
|
+
* starting collectibles are represented by an empty array.
|
|
5
|
+
*
|
|
6
|
+
* Taken from the "challenges.xml" file.
|
|
7
|
+
*/
|
|
8
|
+
export declare const CHALLENGE_COLLECTIBLE_TYPES: {
|
|
9
|
+
readonly 0: readonly [];
|
|
10
|
+
readonly 1: readonly [];
|
|
11
|
+
readonly 2: readonly [CollectibleType.NUMBER_ONE, CollectibleType.BUTT_BOMBS, CollectibleType.E_COLI, CollectibleType.FLUSH];
|
|
12
|
+
readonly 3: readonly [CollectibleType.SMALL_ROCK, CollectibleType.IRON_BAR, CollectibleType.TINY_PLANET, CollectibleType.SOY_MILK];
|
|
13
|
+
readonly 4: readonly [CollectibleType.PENTAGRAM, CollectibleType.RAZOR_BLADE, CollectibleType.SACRIFICIAL_DAGGER, CollectibleType.DARK_MATTER];
|
|
14
|
+
readonly 5: readonly [CollectibleType.BUCKET_OF_LARD, CollectibleType.INFAMY, CollectibleType.THUNDER_THIGHS];
|
|
15
|
+
readonly 6: readonly [CollectibleType.HALO_OF_FLIES, CollectibleType.TRANSCENDENCE, CollectibleType.DISTANT_ADMIRATION, CollectibleType.FOREVER_ALONE];
|
|
16
|
+
readonly 7: readonly [CollectibleType.MY_REFLECTION, CollectibleType.MR_MEGA, CollectibleType.IPECAC];
|
|
17
|
+
readonly 8: readonly [CollectibleType.GUPPYS_TAIL, CollectibleType.GUPPYS_HEAD, CollectibleType.GUPPYS_HAIRBALL];
|
|
18
|
+
readonly 9: readonly [CollectibleType.DR_FETUS, CollectibleType.REMOTE_DETONATOR];
|
|
19
|
+
readonly 10: readonly [CollectibleType.RAW_LIVER, CollectibleType.COMPASS, CollectibleType.TREASURE_MAP, CollectibleType.BLUE_MAP];
|
|
20
|
+
readonly 11: readonly [CollectibleType.LOKIS_HORNS, CollectibleType.EPIC_FETUS];
|
|
21
|
+
readonly 12: readonly [CollectibleType.LEMON_MISHAP, CollectibleType.NINE_VOLT, CollectibleType.HABIT];
|
|
22
|
+
readonly 13: readonly [CollectibleType.BEAN, CollectibleType.NINE_VOLT, CollectibleType.BLACK_BEAN, CollectibleType.PYRO, CollectibleType.BUTT_BOMBS];
|
|
23
|
+
readonly 14: readonly [CollectibleType.BATTERY, CollectibleType.DECK_OF_CARDS, CollectibleType.NINE_VOLT, CollectibleType.STARTER_DECK];
|
|
24
|
+
readonly 15: readonly [CollectibleType.MY_REFLECTION, CollectibleType.CUPIDS_ARROW, CollectibleType.POLYPHEMUS];
|
|
25
|
+
readonly 16: readonly [CollectibleType.SPOON_BENDER, CollectibleType.TECHNOLOGY, CollectibleType.TECHNOLOGY_2];
|
|
26
|
+
readonly 17: readonly [CollectibleType.ANTI_GRAVITY, CollectibleType.STRANGE_ATTRACTOR];
|
|
27
|
+
readonly 18: readonly [CollectibleType.MULLIGAN, CollectibleType.SPIDERBABY];
|
|
28
|
+
readonly 19: readonly [CollectibleType.BROTHER_BOBBY, CollectibleType.SISTER_MAGGY, CollectibleType.DADS_KEY, CollectibleType.BFFS, CollectibleType.ROTTEN_BABY];
|
|
29
|
+
readonly 20: readonly [];
|
|
30
|
+
readonly 21: readonly [];
|
|
31
|
+
readonly 22: readonly [];
|
|
32
|
+
readonly 23: readonly [CollectibleType.BROTHER_BOBBY, CollectibleType.KAMIKAZE, CollectibleType.MR_MEGA, CollectibleType.PYROMANIAC];
|
|
33
|
+
readonly 24: readonly [CollectibleType.SACK_OF_PENNIES, CollectibleType.MONEY_EQUALS_POWER];
|
|
34
|
+
readonly 25: readonly [CollectibleType.CHARM_OF_THE_VAMPIRE];
|
|
35
|
+
readonly 26: readonly [CollectibleType.LADDER, CollectibleType.MOMS_KNIFE, CollectibleType.TRINITY_SHIELD, CollectibleType.BOOMERANG];
|
|
36
|
+
readonly 27: readonly [CollectibleType.BOBS_BRAIN, CollectibleType.BOBS_BRAIN, CollectibleType.BOBS_BRAIN, CollectibleType.THUNDER_THIGHS];
|
|
37
|
+
readonly 28: readonly [CollectibleType.RAINBOW_BABY, CollectibleType.THREE_DOLLAR_BILL];
|
|
38
|
+
readonly 29: readonly [CollectibleType.CHOCOLATE_MILK];
|
|
39
|
+
readonly 30: readonly [CollectibleType.HOLY_GRAIL, CollectibleType.ISAACS_HEART, CollectibleType.PUNCHING_BAG, CollectibleType.SPEAR_OF_DESTINY];
|
|
40
|
+
readonly 31: readonly [];
|
|
41
|
+
readonly 32: readonly [];
|
|
42
|
+
readonly 33: readonly [CollectibleType.MOMS_EYESHADOW, CollectibleType.FRIEND_BALL];
|
|
43
|
+
readonly 34: readonly [CollectibleType.BOOK_OF_REVELATIONS, CollectibleType.CAFFEINE_PILL];
|
|
44
|
+
readonly 35: readonly [CollectibleType.CUPIDS_ARROW, CollectibleType.RUBBER_CEMENT];
|
|
45
|
+
readonly 36: readonly [CollectibleType.SKATOLE, CollectibleType.POOP, CollectibleType.NINE_VOLT, CollectibleType.BUTT_BOMBS, CollectibleType.BUTT_BOMBS, CollectibleType.BUTT_BOMBS, CollectibleType.E_COLI, CollectibleType.BFFS, CollectibleType.THUNDER_THIGHS, CollectibleType.DIRTY_MIND];
|
|
46
|
+
readonly 37: readonly [CollectibleType.BOOK_OF_BELIAL, CollectibleType.BLOOD_BAG, CollectibleType.ANEMIC, CollectibleType.BLOOD_OATH];
|
|
47
|
+
readonly 38: readonly [CollectibleType.GUPPYS_PAW, CollectibleType.SCHOOLBAG, CollectibleType.URN_OF_SOULS];
|
|
48
|
+
readonly 39: readonly [CollectibleType.TRINITY_SHIELD, CollectibleType.SPIRIT_SWORD, CollectibleType.MOMS_BRACELET];
|
|
49
|
+
readonly 40: readonly [245];
|
|
50
|
+
readonly 41: readonly [CollectibleType.MOMS_PURSE, CollectibleType.MOMS_BOX, CollectibleType.MARBLES];
|
|
51
|
+
readonly 42: readonly [];
|
|
52
|
+
readonly 43: readonly [];
|
|
53
|
+
readonly 44: readonly [CollectibleType.DADS_KEY];
|
|
54
|
+
readonly 45: readonly [CollectibleType.TMTRAINER];
|
|
55
|
+
};
|
|
56
|
+
//# sourceMappingURL=challengeCollectibleTypes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"challengeCollectibleTypes.d.ts","sourceRoot":"","sources":["../../../src/objects/challengeCollectibleTypes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAE1E;;;;;GAKG;AACH,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiS0B,CAAC"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
local ____exports = {}
|
|
2
|
+
local ____isaac_2Dtypescript_2Ddefinitions = require("isaac-typescript-definitions")
|
|
3
|
+
local Challenge = ____isaac_2Dtypescript_2Ddefinitions.Challenge
|
|
4
|
+
local CollectibleType = ____isaac_2Dtypescript_2Ddefinitions.CollectibleType
|
|
5
|
+
--- Contains the extra starting collectibles for each challenge. Challenges that do not grant extra
|
|
6
|
+
-- starting collectibles are represented by an empty array.
|
|
7
|
+
--
|
|
8
|
+
-- Taken from the "challenges.xml" file.
|
|
9
|
+
____exports.CHALLENGE_COLLECTIBLE_TYPES = {
|
|
10
|
+
[Challenge.NULL] = {},
|
|
11
|
+
[Challenge.PITCH_BLACK] = {},
|
|
12
|
+
[Challenge.HIGH_BROW] = {CollectibleType.NUMBER_ONE, CollectibleType.BUTT_BOMBS, CollectibleType.E_COLI, CollectibleType.FLUSH},
|
|
13
|
+
[Challenge.HEAD_TRAUMA] = {CollectibleType.SMALL_ROCK, CollectibleType.IRON_BAR, CollectibleType.TINY_PLANET, CollectibleType.SOY_MILK},
|
|
14
|
+
[Challenge.DARKNESS_FALLS] = {CollectibleType.PENTAGRAM, CollectibleType.RAZOR_BLADE, CollectibleType.SACRIFICIAL_DAGGER, CollectibleType.DARK_MATTER},
|
|
15
|
+
[Challenge.TANK] = {CollectibleType.BUCKET_OF_LARD, CollectibleType.INFAMY, CollectibleType.THUNDER_THIGHS},
|
|
16
|
+
[Challenge.SOLAR_SYSTEM] = {CollectibleType.HALO_OF_FLIES, CollectibleType.TRANSCENDENCE, CollectibleType.DISTANT_ADMIRATION, CollectibleType.FOREVER_ALONE},
|
|
17
|
+
[Challenge.SUICIDE_KING] = {CollectibleType.MY_REFLECTION, CollectibleType.MR_MEGA, CollectibleType.IPECAC},
|
|
18
|
+
[Challenge.CAT_GOT_YOUR_TONGUE] = {CollectibleType.GUPPYS_TAIL, CollectibleType.GUPPYS_HEAD, CollectibleType.GUPPYS_HAIRBALL},
|
|
19
|
+
[Challenge.DEMO_MAN] = {CollectibleType.DR_FETUS, CollectibleType.REMOTE_DETONATOR},
|
|
20
|
+
[Challenge.CURSED] = {CollectibleType.RAW_LIVER, CollectibleType.COMPASS, CollectibleType.TREASURE_MAP, CollectibleType.BLUE_MAP},
|
|
21
|
+
[Challenge.GLASS_CANNON] = {CollectibleType.LOKIS_HORNS, CollectibleType.EPIC_FETUS},
|
|
22
|
+
[Challenge.WHEN_LIFE_GIVES_YOU_LEMONS] = {CollectibleType.LEMON_MISHAP, CollectibleType.NINE_VOLT, CollectibleType.HABIT},
|
|
23
|
+
[Challenge.BEANS] = {
|
|
24
|
+
CollectibleType.BEAN,
|
|
25
|
+
CollectibleType.NINE_VOLT,
|
|
26
|
+
CollectibleType.BLACK_BEAN,
|
|
27
|
+
CollectibleType.PYRO,
|
|
28
|
+
CollectibleType.BUTT_BOMBS
|
|
29
|
+
},
|
|
30
|
+
[Challenge.ITS_IN_THE_CARDS] = {CollectibleType.BATTERY, CollectibleType.DECK_OF_CARDS, CollectibleType.NINE_VOLT, CollectibleType.STARTER_DECK},
|
|
31
|
+
[Challenge.SLOW_ROLL] = {CollectibleType.MY_REFLECTION, CollectibleType.CUPIDS_ARROW, CollectibleType.POLYPHEMUS},
|
|
32
|
+
[Challenge.COMPUTER_SAVY] = {CollectibleType.SPOON_BENDER, CollectibleType.TECHNOLOGY, CollectibleType.TECHNOLOGY_2},
|
|
33
|
+
[Challenge.WAKA_WAKA] = {CollectibleType.ANTI_GRAVITY, CollectibleType.STRANGE_ATTRACTOR},
|
|
34
|
+
[Challenge.HOST] = {CollectibleType.MULLIGAN, CollectibleType.SPIDERBABY},
|
|
35
|
+
[Challenge.FAMILY_MAN] = {
|
|
36
|
+
CollectibleType.BROTHER_BOBBY,
|
|
37
|
+
CollectibleType.SISTER_MAGGY,
|
|
38
|
+
CollectibleType.DADS_KEY,
|
|
39
|
+
CollectibleType.BFFS,
|
|
40
|
+
CollectibleType.ROTTEN_BABY
|
|
41
|
+
},
|
|
42
|
+
[Challenge.PURIST] = {},
|
|
43
|
+
[Challenge.XXXXXXXXL] = {},
|
|
44
|
+
[Challenge.SPEED] = {},
|
|
45
|
+
[Challenge.BLUE_BOMBER] = {CollectibleType.BROTHER_BOBBY, CollectibleType.KAMIKAZE, CollectibleType.MR_MEGA, CollectibleType.PYROMANIAC},
|
|
46
|
+
[Challenge.PAY_TO_PLAY] = {CollectibleType.SACK_OF_PENNIES, CollectibleType.MONEY_EQUALS_POWER},
|
|
47
|
+
[Challenge.HAVE_A_HEART] = {CollectibleType.CHARM_OF_THE_VAMPIRE},
|
|
48
|
+
[Challenge.I_RULE] = {CollectibleType.LADDER, CollectibleType.MOMS_KNIFE, CollectibleType.TRINITY_SHIELD, CollectibleType.BOOMERANG},
|
|
49
|
+
[Challenge.BRAINS] = {CollectibleType.BOBS_BRAIN, CollectibleType.BOBS_BRAIN, CollectibleType.BOBS_BRAIN, CollectibleType.THUNDER_THIGHS},
|
|
50
|
+
[Challenge.PRIDE_DAY] = {CollectibleType.RAINBOW_BABY, CollectibleType.THREE_DOLLAR_BILL},
|
|
51
|
+
[Challenge.ONANS_STREAK] = {CollectibleType.CHOCOLATE_MILK},
|
|
52
|
+
[Challenge.GUARDIAN] = {CollectibleType.HOLY_GRAIL, CollectibleType.ISAACS_HEART, CollectibleType.PUNCHING_BAG, CollectibleType.SPEAR_OF_DESTINY},
|
|
53
|
+
[Challenge.BACKASSWARDS] = {},
|
|
54
|
+
[Challenge.APRILS_FOOL] = {},
|
|
55
|
+
[Challenge.POKEY_MANS] = {CollectibleType.MOMS_EYESHADOW, CollectibleType.FRIEND_BALL},
|
|
56
|
+
[Challenge.ULTRA_HARD] = {CollectibleType.BOOK_OF_REVELATIONS, CollectibleType.CAFFEINE_PILL},
|
|
57
|
+
[Challenge.PONG] = {CollectibleType.CUPIDS_ARROW, CollectibleType.RUBBER_CEMENT},
|
|
58
|
+
[Challenge.SCAT_MAN] = {
|
|
59
|
+
CollectibleType.SKATOLE,
|
|
60
|
+
CollectibleType.POOP,
|
|
61
|
+
CollectibleType.NINE_VOLT,
|
|
62
|
+
CollectibleType.BUTT_BOMBS,
|
|
63
|
+
CollectibleType.BUTT_BOMBS,
|
|
64
|
+
CollectibleType.BUTT_BOMBS,
|
|
65
|
+
CollectibleType.E_COLI,
|
|
66
|
+
CollectibleType.BFFS,
|
|
67
|
+
CollectibleType.THUNDER_THIGHS,
|
|
68
|
+
CollectibleType.DIRTY_MIND
|
|
69
|
+
},
|
|
70
|
+
[Challenge.BLOODY_MARY] = {CollectibleType.BOOK_OF_BELIAL, CollectibleType.BLOOD_BAG, CollectibleType.ANEMIC, CollectibleType.BLOOD_OATH},
|
|
71
|
+
[Challenge.BAPTISM_BY_FIRE] = {CollectibleType.GUPPYS_PAW, CollectibleType.SCHOOLBAG, CollectibleType.URN_OF_SOULS},
|
|
72
|
+
[Challenge.ISAACS_AWAKENING] = {CollectibleType.TRINITY_SHIELD, CollectibleType.SPIRIT_SWORD, CollectibleType.MOMS_BRACELET},
|
|
73
|
+
[Challenge.SEEING_DOUBLE] = {245},
|
|
74
|
+
[Challenge.PICA_RUN] = {CollectibleType.MOMS_PURSE, CollectibleType.MOMS_BOX, CollectibleType.MARBLES},
|
|
75
|
+
[Challenge.HOT_POTATO] = {},
|
|
76
|
+
[Challenge.CANTRIPPED] = {},
|
|
77
|
+
[Challenge.RED_REDEMPTION] = {CollectibleType.DADS_KEY},
|
|
78
|
+
[Challenge.DELETE_THIS] = {CollectibleType.TMTRAINER}
|
|
79
|
+
}
|
|
80
|
+
return ____exports
|
|
@@ -16,7 +16,7 @@ ____exports.CHALLENGE_NAMES = {
|
|
|
16
16
|
[Challenge.DEMO_MAN] = "Demo Man",
|
|
17
17
|
[Challenge.CURSED] = "Cursed!",
|
|
18
18
|
[Challenge.GLASS_CANNON] = "Glass Cannon",
|
|
19
|
-
[Challenge.
|
|
19
|
+
[Challenge.WHEN_LIFE_GIVES_YOU_LEMONS] = "When Life Gives You Lemons",
|
|
20
20
|
[Challenge.BEANS] = "Beans!",
|
|
21
21
|
[Challenge.ITS_IN_THE_CARDS] = "It's In The Cards",
|
|
22
22
|
[Challenge.SLOW_ROLL] = "Slow Roll",
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { TrinketType } from "isaac-typescript-definitions";
|
|
2
|
+
/**
|
|
3
|
+
* Contains the starting trinket for each challenge. Challenges that do not grant a starting trinket
|
|
4
|
+
* will have a value of `undefined`.
|
|
5
|
+
*
|
|
6
|
+
* Taken from the "challenges.xml" file.
|
|
7
|
+
*/
|
|
8
|
+
export declare const CHALLENGE_TRINKET_TYPE: {
|
|
9
|
+
readonly 0: undefined;
|
|
10
|
+
readonly 1: undefined;
|
|
11
|
+
readonly 2: TrinketType.PETRIFIED_POOP;
|
|
12
|
+
readonly 3: undefined;
|
|
13
|
+
readonly 4: undefined;
|
|
14
|
+
readonly 5: undefined;
|
|
15
|
+
readonly 6: undefined;
|
|
16
|
+
readonly 7: undefined;
|
|
17
|
+
readonly 8: undefined;
|
|
18
|
+
readonly 9: TrinketType.MATCH_STICK;
|
|
19
|
+
readonly 10: TrinketType.CHILDS_HEART;
|
|
20
|
+
readonly 11: undefined;
|
|
21
|
+
readonly 12: undefined;
|
|
22
|
+
readonly 13: undefined;
|
|
23
|
+
readonly 14: undefined;
|
|
24
|
+
readonly 15: undefined;
|
|
25
|
+
readonly 16: undefined;
|
|
26
|
+
readonly 17: undefined;
|
|
27
|
+
readonly 18: TrinketType.TICK;
|
|
28
|
+
readonly 19: undefined;
|
|
29
|
+
readonly 20: undefined;
|
|
30
|
+
readonly 21: undefined;
|
|
31
|
+
readonly 22: undefined;
|
|
32
|
+
readonly 23: undefined;
|
|
33
|
+
readonly 24: undefined;
|
|
34
|
+
readonly 25: undefined;
|
|
35
|
+
readonly 26: undefined;
|
|
36
|
+
readonly 27: undefined;
|
|
37
|
+
readonly 28: TrinketType.RAINBOW_WORM;
|
|
38
|
+
readonly 29: undefined;
|
|
39
|
+
readonly 30: undefined;
|
|
40
|
+
readonly 31: undefined;
|
|
41
|
+
readonly 32: undefined;
|
|
42
|
+
readonly 33: undefined;
|
|
43
|
+
readonly 34: undefined;
|
|
44
|
+
readonly 35: undefined;
|
|
45
|
+
readonly 36: TrinketType.MYSTERIOUS_CANDY;
|
|
46
|
+
readonly 37: TrinketType.CHILDS_HEART;
|
|
47
|
+
readonly 38: TrinketType.MAGGYS_FAITH;
|
|
48
|
+
readonly 39: undefined;
|
|
49
|
+
readonly 40: undefined;
|
|
50
|
+
readonly 41: undefined;
|
|
51
|
+
readonly 42: undefined;
|
|
52
|
+
readonly 43: undefined;
|
|
53
|
+
readonly 44: undefined;
|
|
54
|
+
readonly 45: undefined;
|
|
55
|
+
};
|
|
56
|
+
//# sourceMappingURL=challengeTrinketType.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"challengeTrinketType.d.ts","sourceRoot":"","sources":["../../../src/objects/challengeTrinketType.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAEtE;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+C4B,CAAC"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
local ____exports = {}
|
|
2
|
+
local ____isaac_2Dtypescript_2Ddefinitions = require("isaac-typescript-definitions")
|
|
3
|
+
local Challenge = ____isaac_2Dtypescript_2Ddefinitions.Challenge
|
|
4
|
+
local TrinketType = ____isaac_2Dtypescript_2Ddefinitions.TrinketType
|
|
5
|
+
--- Contains the starting trinket for each challenge. Challenges that do not grant a starting trinket
|
|
6
|
+
-- will have a value of `undefined`.
|
|
7
|
+
--
|
|
8
|
+
-- Taken from the "challenges.xml" file.
|
|
9
|
+
____exports.CHALLENGE_TRINKET_TYPE = {
|
|
10
|
+
[Challenge.NULL] = nil,
|
|
11
|
+
[Challenge.PITCH_BLACK] = nil,
|
|
12
|
+
[Challenge.HIGH_BROW] = TrinketType.PETRIFIED_POOP,
|
|
13
|
+
[Challenge.HEAD_TRAUMA] = nil,
|
|
14
|
+
[Challenge.DARKNESS_FALLS] = nil,
|
|
15
|
+
[Challenge.TANK] = nil,
|
|
16
|
+
[Challenge.SOLAR_SYSTEM] = nil,
|
|
17
|
+
[Challenge.SUICIDE_KING] = nil,
|
|
18
|
+
[Challenge.CAT_GOT_YOUR_TONGUE] = nil,
|
|
19
|
+
[Challenge.DEMO_MAN] = TrinketType.MATCH_STICK,
|
|
20
|
+
[Challenge.CURSED] = TrinketType.CHILDS_HEART,
|
|
21
|
+
[Challenge.GLASS_CANNON] = nil,
|
|
22
|
+
[Challenge.WHEN_LIFE_GIVES_YOU_LEMONS] = nil,
|
|
23
|
+
[Challenge.BEANS] = nil,
|
|
24
|
+
[Challenge.ITS_IN_THE_CARDS] = nil,
|
|
25
|
+
[Challenge.SLOW_ROLL] = nil,
|
|
26
|
+
[Challenge.COMPUTER_SAVY] = nil,
|
|
27
|
+
[Challenge.WAKA_WAKA] = nil,
|
|
28
|
+
[Challenge.HOST] = TrinketType.TICK,
|
|
29
|
+
[Challenge.FAMILY_MAN] = nil,
|
|
30
|
+
[Challenge.PURIST] = nil,
|
|
31
|
+
[Challenge.XXXXXXXXL] = nil,
|
|
32
|
+
[Challenge.SPEED] = nil,
|
|
33
|
+
[Challenge.BLUE_BOMBER] = nil,
|
|
34
|
+
[Challenge.PAY_TO_PLAY] = nil,
|
|
35
|
+
[Challenge.HAVE_A_HEART] = nil,
|
|
36
|
+
[Challenge.I_RULE] = nil,
|
|
37
|
+
[Challenge.BRAINS] = nil,
|
|
38
|
+
[Challenge.PRIDE_DAY] = TrinketType.RAINBOW_WORM,
|
|
39
|
+
[Challenge.ONANS_STREAK] = nil,
|
|
40
|
+
[Challenge.GUARDIAN] = nil,
|
|
41
|
+
[Challenge.BACKASSWARDS] = nil,
|
|
42
|
+
[Challenge.APRILS_FOOL] = nil,
|
|
43
|
+
[Challenge.POKEY_MANS] = nil,
|
|
44
|
+
[Challenge.ULTRA_HARD] = nil,
|
|
45
|
+
[Challenge.PONG] = nil,
|
|
46
|
+
[Challenge.SCAT_MAN] = TrinketType.MYSTERIOUS_CANDY,
|
|
47
|
+
[Challenge.BLOODY_MARY] = TrinketType.CHILDS_HEART,
|
|
48
|
+
[Challenge.BAPTISM_BY_FIRE] = TrinketType.MAGGYS_FAITH,
|
|
49
|
+
[Challenge.ISAACS_AWAKENING] = nil,
|
|
50
|
+
[Challenge.SEEING_DOUBLE] = nil,
|
|
51
|
+
[Challenge.PICA_RUN] = nil,
|
|
52
|
+
[Challenge.HOT_POTATO] = nil,
|
|
53
|
+
[Challenge.CANTRIPPED] = nil,
|
|
54
|
+
[Challenge.RED_REDEMPTION] = nil,
|
|
55
|
+
[Challenge.DELETE_THIS] = nil
|
|
56
|
+
}
|
|
57
|
+
return ____exports
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "isaacscript-common",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "71.0.1",
|
|
4
4
|
"description": "Helper functions and features for IsaacScript mods.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"isaac",
|
|
@@ -25,6 +25,6 @@
|
|
|
25
25
|
"main": "dist/src/index",
|
|
26
26
|
"types": "dist/index.rollup.d.ts",
|
|
27
27
|
"dependencies": {
|
|
28
|
-
"isaac-typescript-definitions": "^
|
|
28
|
+
"isaac-typescript-definitions": "^36.0.0"
|
|
29
29
|
}
|
|
30
30
|
}
|
|
@@ -1,4 +1,9 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type {
|
|
2
|
+
BossID,
|
|
3
|
+
CollectibleType,
|
|
4
|
+
PlayerType,
|
|
5
|
+
TrinketType,
|
|
6
|
+
} from "isaac-typescript-definitions";
|
|
2
7
|
import { Challenge } from "isaac-typescript-definitions";
|
|
3
8
|
import {
|
|
4
9
|
CHALLENGE_BOSSES,
|
|
@@ -8,10 +13,12 @@ import {
|
|
|
8
13
|
CHALLENGE_CHARACTERS,
|
|
9
14
|
DEFAULT_CHALLENGE_CHARACTER,
|
|
10
15
|
} from "../objects/challengeCharacters";
|
|
16
|
+
import { CHALLENGE_COLLECTIBLE_TYPES } from "../objects/challengeCollectibleTypes";
|
|
11
17
|
import {
|
|
12
18
|
CHALLENGE_NAMES,
|
|
13
19
|
DEFAULT_CHALLENGE_NAME,
|
|
14
20
|
} from "../objects/challengeNames";
|
|
21
|
+
import { CHALLENGE_TRINKET_TYPE } from "../objects/challengeTrinketType";
|
|
15
22
|
import { log } from "./log";
|
|
16
23
|
|
|
17
24
|
/**
|
|
@@ -59,6 +66,17 @@ export function getChallengeCharacter(challenge: Challenge): PlayerType {
|
|
|
59
66
|
return challengeCharacter ?? DEFAULT_CHALLENGE_CHARACTER;
|
|
60
67
|
}
|
|
61
68
|
|
|
69
|
+
/**
|
|
70
|
+
* Get the extra starting collectibles for a challenge. This will only work for vanilla challenges.
|
|
71
|
+
*
|
|
72
|
+
* For modded challenges, an empty array will be returned.
|
|
73
|
+
*/
|
|
74
|
+
export function getChallengeCollectibleTypes(
|
|
75
|
+
challenge: Challenge,
|
|
76
|
+
): readonly CollectibleType[] {
|
|
77
|
+
return CHALLENGE_COLLECTIBLE_TYPES[challenge];
|
|
78
|
+
}
|
|
79
|
+
|
|
62
80
|
/**
|
|
63
81
|
* Get the proper name for a `Challenge` enum. This will only work for vanilla challenges.
|
|
64
82
|
*
|
|
@@ -71,6 +89,19 @@ export function getChallengeName(challenge: Challenge): string {
|
|
|
71
89
|
return challengeName ?? DEFAULT_CHALLENGE_NAME;
|
|
72
90
|
}
|
|
73
91
|
|
|
92
|
+
/**
|
|
93
|
+
* Get the extra starting trinket for a challenge. This will only work for vanilla challenges.
|
|
94
|
+
*
|
|
95
|
+
* If a challenge does not grant a starting trinket, `undefined` will be returned.
|
|
96
|
+
*
|
|
97
|
+
* For modded challenges, `undefined` will be returned.
|
|
98
|
+
*/
|
|
99
|
+
export function getChallengeTrinketType(
|
|
100
|
+
challenge: Challenge,
|
|
101
|
+
): TrinketType | undefined {
|
|
102
|
+
return CHALLENGE_TRINKET_TYPE[challenge];
|
|
103
|
+
}
|
|
104
|
+
|
|
74
105
|
/** Helper function to see if the player is playing any challenge. */
|
|
75
106
|
export function onAnyChallenge(): boolean {
|
|
76
107
|
const challenge = Isaac.GetChallenge();
|
|
@@ -3,6 +3,8 @@ import { BossID, Challenge } from "isaac-typescript-definitions";
|
|
|
3
3
|
export const DEFAULT_CHALLENGE_BOSS_ID = BossID.MOM;
|
|
4
4
|
|
|
5
5
|
/**
|
|
6
|
+
* Contains the boss goal for each challenge.
|
|
7
|
+
*
|
|
6
8
|
* Taken from the "challenges.xml" file.
|
|
7
9
|
*
|
|
8
10
|
* @see https://bindingofisaacrebirth.fandom.com/wiki/Challenges
|
|
@@ -20,7 +22,7 @@ export const CHALLENGE_BOSSES = {
|
|
|
20
22
|
[Challenge.DEMO_MAN]: BossID.MOMS_HEART, // 9
|
|
21
23
|
[Challenge.CURSED]: BossID.MOM, // 10
|
|
22
24
|
[Challenge.GLASS_CANNON]: BossID.SATAN, // 11
|
|
23
|
-
[Challenge.
|
|
25
|
+
[Challenge.WHEN_LIFE_GIVES_YOU_LEMONS]: BossID.MOM, // 12
|
|
24
26
|
[Challenge.BEANS]: BossID.MOM, // 13
|
|
25
27
|
[Challenge.ITS_IN_THE_CARDS]: BossID.MOM, // 14
|
|
26
28
|
[Challenge.SLOW_ROLL]: BossID.MOM, // 15
|
|
@@ -2,7 +2,11 @@ import { Challenge, PlayerType } from "isaac-typescript-definitions";
|
|
|
2
2
|
|
|
3
3
|
export const DEFAULT_CHALLENGE_CHARACTER = PlayerType.ISAAC;
|
|
4
4
|
|
|
5
|
-
/**
|
|
5
|
+
/**
|
|
6
|
+
* Contains the starting character for each challenge.
|
|
7
|
+
*
|
|
8
|
+
* Taken from the "challenges.xml" file.
|
|
9
|
+
*/
|
|
6
10
|
export const CHALLENGE_CHARACTERS = {
|
|
7
11
|
[Challenge.NULL]: DEFAULT_CHALLENGE_CHARACTER, // 0
|
|
8
12
|
[Challenge.PITCH_BLACK]: DEFAULT_CHALLENGE_CHARACTER, // 1
|
|
@@ -16,7 +20,7 @@ export const CHALLENGE_CHARACTERS = {
|
|
|
16
20
|
[Challenge.DEMO_MAN]: DEFAULT_CHALLENGE_CHARACTER, // 9
|
|
17
21
|
[Challenge.CURSED]: PlayerType.MAGDALENE, // 10
|
|
18
22
|
[Challenge.GLASS_CANNON]: PlayerType.JUDAS, // 11
|
|
19
|
-
[Challenge.
|
|
23
|
+
[Challenge.WHEN_LIFE_GIVES_YOU_LEMONS]: DEFAULT_CHALLENGE_CHARACTER, // 12
|
|
20
24
|
[Challenge.BEANS]: DEFAULT_CHALLENGE_CHARACTER, // 13
|
|
21
25
|
[Challenge.ITS_IN_THE_CARDS]: DEFAULT_CHALLENGE_CHARACTER, // 14
|
|
22
26
|
[Challenge.SLOW_ROLL]: DEFAULT_CHALLENGE_CHARACTER, // 15
|
|
@@ -0,0 +1,298 @@
|
|
|
1
|
+
import { Challenge, CollectibleType } from "isaac-typescript-definitions";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Contains the extra starting collectibles for each challenge. Challenges that do not grant extra
|
|
5
|
+
* starting collectibles are represented by an empty array.
|
|
6
|
+
*
|
|
7
|
+
* Taken from the "challenges.xml" file.
|
|
8
|
+
*/
|
|
9
|
+
export const CHALLENGE_COLLECTIBLE_TYPES = {
|
|
10
|
+
// 0
|
|
11
|
+
[Challenge.NULL]: [],
|
|
12
|
+
|
|
13
|
+
// 1
|
|
14
|
+
[Challenge.PITCH_BLACK]: [],
|
|
15
|
+
|
|
16
|
+
// 2
|
|
17
|
+
[Challenge.HIGH_BROW]: [
|
|
18
|
+
CollectibleType.NUMBER_ONE, // 6
|
|
19
|
+
CollectibleType.BUTT_BOMBS, // 209
|
|
20
|
+
CollectibleType.E_COLI, // 236
|
|
21
|
+
CollectibleType.FLUSH, // 291
|
|
22
|
+
],
|
|
23
|
+
|
|
24
|
+
// 3
|
|
25
|
+
[Challenge.HEAD_TRAUMA]: [
|
|
26
|
+
CollectibleType.SMALL_ROCK, // 90
|
|
27
|
+
CollectibleType.IRON_BAR, // 201
|
|
28
|
+
CollectibleType.TINY_PLANET, // 233
|
|
29
|
+
CollectibleType.SOY_MILK, // 330
|
|
30
|
+
],
|
|
31
|
+
|
|
32
|
+
// 4
|
|
33
|
+
[Challenge.DARKNESS_FALLS]: [
|
|
34
|
+
CollectibleType.PENTAGRAM, // 51
|
|
35
|
+
CollectibleType.RAZOR_BLADE, // 126
|
|
36
|
+
CollectibleType.SACRIFICIAL_DAGGER, // 172
|
|
37
|
+
CollectibleType.DARK_MATTER, // 259
|
|
38
|
+
],
|
|
39
|
+
|
|
40
|
+
// 5
|
|
41
|
+
[Challenge.TANK]: [
|
|
42
|
+
CollectibleType.BUCKET_OF_LARD, // 129
|
|
43
|
+
CollectibleType.INFAMY, // 242
|
|
44
|
+
CollectibleType.THUNDER_THIGHS, // 314
|
|
45
|
+
],
|
|
46
|
+
|
|
47
|
+
// 6
|
|
48
|
+
[Challenge.SOLAR_SYSTEM]: [
|
|
49
|
+
CollectibleType.HALO_OF_FLIES, // 10
|
|
50
|
+
CollectibleType.TRANSCENDENCE, // 20
|
|
51
|
+
CollectibleType.DISTANT_ADMIRATION, // 57
|
|
52
|
+
CollectibleType.FOREVER_ALONE, // 128
|
|
53
|
+
],
|
|
54
|
+
|
|
55
|
+
// 7
|
|
56
|
+
[Challenge.SUICIDE_KING]: [
|
|
57
|
+
CollectibleType.MY_REFLECTION, // 5
|
|
58
|
+
CollectibleType.MR_MEGA, // 106
|
|
59
|
+
CollectibleType.IPECAC, // 149
|
|
60
|
+
],
|
|
61
|
+
|
|
62
|
+
// 8
|
|
63
|
+
[Challenge.CAT_GOT_YOUR_TONGUE]: [
|
|
64
|
+
CollectibleType.GUPPYS_TAIL, // 134
|
|
65
|
+
CollectibleType.GUPPYS_HEAD, // 145
|
|
66
|
+
CollectibleType.GUPPYS_HAIRBALL, // 187
|
|
67
|
+
],
|
|
68
|
+
|
|
69
|
+
// 9
|
|
70
|
+
[Challenge.DEMO_MAN]: [
|
|
71
|
+
CollectibleType.DR_FETUS, // 52
|
|
72
|
+
CollectibleType.REMOTE_DETONATOR, // 137
|
|
73
|
+
],
|
|
74
|
+
|
|
75
|
+
// 10
|
|
76
|
+
[Challenge.CURSED]: [
|
|
77
|
+
CollectibleType.RAW_LIVER, // 16
|
|
78
|
+
CollectibleType.COMPASS, // 21
|
|
79
|
+
CollectibleType.TREASURE_MAP, // 54
|
|
80
|
+
CollectibleType.BLUE_MAP, // 246
|
|
81
|
+
],
|
|
82
|
+
|
|
83
|
+
// 11
|
|
84
|
+
[Challenge.GLASS_CANNON]: [
|
|
85
|
+
CollectibleType.LOKIS_HORNS, // 87
|
|
86
|
+
CollectibleType.EPIC_FETUS, // 168
|
|
87
|
+
],
|
|
88
|
+
|
|
89
|
+
// 12
|
|
90
|
+
[Challenge.WHEN_LIFE_GIVES_YOU_LEMONS]: [
|
|
91
|
+
CollectibleType.LEMON_MISHAP, // 56
|
|
92
|
+
CollectibleType.NINE_VOLT, // 116
|
|
93
|
+
CollectibleType.HABIT, // 156
|
|
94
|
+
],
|
|
95
|
+
|
|
96
|
+
// 13
|
|
97
|
+
[Challenge.BEANS]: [
|
|
98
|
+
CollectibleType.BEAN, // 111
|
|
99
|
+
CollectibleType.NINE_VOLT, // 116
|
|
100
|
+
CollectibleType.BLACK_BEAN, // 180
|
|
101
|
+
CollectibleType.PYRO, // 190
|
|
102
|
+
CollectibleType.BUTT_BOMBS, // 209
|
|
103
|
+
],
|
|
104
|
+
|
|
105
|
+
// 14
|
|
106
|
+
[Challenge.ITS_IN_THE_CARDS]: [
|
|
107
|
+
CollectibleType.BATTERY, // 63
|
|
108
|
+
CollectibleType.DECK_OF_CARDS, // 85
|
|
109
|
+
CollectibleType.NINE_VOLT, // 116
|
|
110
|
+
CollectibleType.STARTER_DECK, // 251
|
|
111
|
+
],
|
|
112
|
+
|
|
113
|
+
// 15
|
|
114
|
+
[Challenge.SLOW_ROLL]: [
|
|
115
|
+
CollectibleType.MY_REFLECTION, // 5
|
|
116
|
+
CollectibleType.CUPIDS_ARROW, // 48
|
|
117
|
+
CollectibleType.POLYPHEMUS, // 169
|
|
118
|
+
],
|
|
119
|
+
|
|
120
|
+
// 16
|
|
121
|
+
[Challenge.COMPUTER_SAVY]: [
|
|
122
|
+
CollectibleType.SPOON_BENDER, // 3
|
|
123
|
+
CollectibleType.TECHNOLOGY, // 68
|
|
124
|
+
CollectibleType.TECHNOLOGY_2, // 152
|
|
125
|
+
],
|
|
126
|
+
|
|
127
|
+
// 17
|
|
128
|
+
[Challenge.WAKA_WAKA]: [
|
|
129
|
+
CollectibleType.ANTI_GRAVITY, // 222
|
|
130
|
+
CollectibleType.STRANGE_ATTRACTOR, // 315
|
|
131
|
+
],
|
|
132
|
+
|
|
133
|
+
// 18
|
|
134
|
+
[Challenge.HOST]: [
|
|
135
|
+
CollectibleType.MULLIGAN, // 151
|
|
136
|
+
CollectibleType.SPIDERBABY, // 211
|
|
137
|
+
],
|
|
138
|
+
|
|
139
|
+
// 19
|
|
140
|
+
[Challenge.FAMILY_MAN]: [
|
|
141
|
+
CollectibleType.BROTHER_BOBBY, // 8
|
|
142
|
+
CollectibleType.SISTER_MAGGY, // 67
|
|
143
|
+
CollectibleType.DADS_KEY, // 175
|
|
144
|
+
CollectibleType.BFFS, // 247
|
|
145
|
+
CollectibleType.ROTTEN_BABY, // 268
|
|
146
|
+
],
|
|
147
|
+
|
|
148
|
+
// 20
|
|
149
|
+
[Challenge.PURIST]: [],
|
|
150
|
+
|
|
151
|
+
// 21
|
|
152
|
+
[Challenge.XXXXXXXXL]: [],
|
|
153
|
+
|
|
154
|
+
// 22
|
|
155
|
+
[Challenge.SPEED]: [],
|
|
156
|
+
|
|
157
|
+
// 23
|
|
158
|
+
[Challenge.BLUE_BOMBER]: [
|
|
159
|
+
CollectibleType.BROTHER_BOBBY, // 8
|
|
160
|
+
CollectibleType.KAMIKAZE, // 40
|
|
161
|
+
CollectibleType.MR_MEGA, // 106
|
|
162
|
+
CollectibleType.PYROMANIAC, // 223
|
|
163
|
+
],
|
|
164
|
+
|
|
165
|
+
// 24
|
|
166
|
+
[Challenge.PAY_TO_PLAY]: [
|
|
167
|
+
CollectibleType.SACK_OF_PENNIES, // 94
|
|
168
|
+
CollectibleType.MONEY_EQUALS_POWER, // 109
|
|
169
|
+
],
|
|
170
|
+
|
|
171
|
+
// 25
|
|
172
|
+
[Challenge.HAVE_A_HEART]: [
|
|
173
|
+
CollectibleType.CHARM_OF_THE_VAMPIRE, // 62
|
|
174
|
+
],
|
|
175
|
+
|
|
176
|
+
// 26
|
|
177
|
+
[Challenge.I_RULE]: [
|
|
178
|
+
CollectibleType.LADDER, // 60
|
|
179
|
+
CollectibleType.MOMS_KNIFE, // 114
|
|
180
|
+
CollectibleType.TRINITY_SHIELD, // 243
|
|
181
|
+
CollectibleType.BOOMERANG, // 338
|
|
182
|
+
],
|
|
183
|
+
|
|
184
|
+
// 27
|
|
185
|
+
[Challenge.BRAINS]: [
|
|
186
|
+
CollectibleType.BOBS_BRAIN, // 273
|
|
187
|
+
CollectibleType.BOBS_BRAIN, // 273
|
|
188
|
+
CollectibleType.BOBS_BRAIN, // 273
|
|
189
|
+
CollectibleType.THUNDER_THIGHS, // 314
|
|
190
|
+
],
|
|
191
|
+
|
|
192
|
+
// 28
|
|
193
|
+
[Challenge.PRIDE_DAY]: [
|
|
194
|
+
CollectibleType.RAINBOW_BABY, // 174
|
|
195
|
+
CollectibleType.THREE_DOLLAR_BILL, // 191
|
|
196
|
+
],
|
|
197
|
+
|
|
198
|
+
// 29
|
|
199
|
+
[Challenge.ONANS_STREAK]: [
|
|
200
|
+
CollectibleType.CHOCOLATE_MILK, // 69
|
|
201
|
+
],
|
|
202
|
+
|
|
203
|
+
// 30
|
|
204
|
+
[Challenge.GUARDIAN]: [
|
|
205
|
+
CollectibleType.HOLY_GRAIL, // 184
|
|
206
|
+
CollectibleType.ISAACS_HEART, // 276
|
|
207
|
+
CollectibleType.PUNCHING_BAG, // 281
|
|
208
|
+
CollectibleType.SPEAR_OF_DESTINY, // 400
|
|
209
|
+
],
|
|
210
|
+
|
|
211
|
+
// 31
|
|
212
|
+
[Challenge.BACKASSWARDS]: [],
|
|
213
|
+
|
|
214
|
+
// 32
|
|
215
|
+
[Challenge.APRILS_FOOL]: [],
|
|
216
|
+
|
|
217
|
+
// 33
|
|
218
|
+
[Challenge.POKEY_MANS]: [
|
|
219
|
+
CollectibleType.MOMS_EYESHADOW, // 200
|
|
220
|
+
CollectibleType.FRIEND_BALL, // 382
|
|
221
|
+
],
|
|
222
|
+
|
|
223
|
+
// 34
|
|
224
|
+
[Challenge.ULTRA_HARD]: [
|
|
225
|
+
CollectibleType.BOOK_OF_REVELATIONS, // 78
|
|
226
|
+
CollectibleType.CAFFEINE_PILL, // 340
|
|
227
|
+
],
|
|
228
|
+
|
|
229
|
+
// 35
|
|
230
|
+
[Challenge.PONG]: [
|
|
231
|
+
CollectibleType.CUPIDS_ARROW, // 48
|
|
232
|
+
CollectibleType.RUBBER_CEMENT, // 221
|
|
233
|
+
],
|
|
234
|
+
|
|
235
|
+
// 36
|
|
236
|
+
[Challenge.SCAT_MAN]: [
|
|
237
|
+
CollectibleType.SKATOLE, // 9
|
|
238
|
+
CollectibleType.POOP, // 36
|
|
239
|
+
CollectibleType.NINE_VOLT, // 116
|
|
240
|
+
CollectibleType.BUTT_BOMBS, // 209
|
|
241
|
+
CollectibleType.BUTT_BOMBS, // 209
|
|
242
|
+
CollectibleType.BUTT_BOMBS, // 209
|
|
243
|
+
CollectibleType.E_COLI, // 236
|
|
244
|
+
CollectibleType.BFFS, // 247
|
|
245
|
+
CollectibleType.THUNDER_THIGHS, // 314
|
|
246
|
+
CollectibleType.DIRTY_MIND, // 576
|
|
247
|
+
],
|
|
248
|
+
|
|
249
|
+
// 37
|
|
250
|
+
[Challenge.BLOODY_MARY]: [
|
|
251
|
+
// Note that in "challenges.xml", it also includes "-584", which removes Book of Virtues from
|
|
252
|
+
// Bethany.
|
|
253
|
+
CollectibleType.BOOK_OF_BELIAL, // 34
|
|
254
|
+
CollectibleType.BLOOD_BAG, // 119
|
|
255
|
+
CollectibleType.ANEMIC, // 214
|
|
256
|
+
CollectibleType.BLOOD_OATH, // 569
|
|
257
|
+
],
|
|
258
|
+
|
|
259
|
+
// 38
|
|
260
|
+
[Challenge.BAPTISM_BY_FIRE]: [
|
|
261
|
+
// Note that in "challenges.xml", it also includes "-584", which removes Book of Virtues from
|
|
262
|
+
// Bethany.
|
|
263
|
+
CollectibleType.GUPPYS_PAW, // 133
|
|
264
|
+
CollectibleType.SCHOOLBAG, // 534
|
|
265
|
+
CollectibleType.URN_OF_SOULS, // 640
|
|
266
|
+
],
|
|
267
|
+
|
|
268
|
+
// 39
|
|
269
|
+
[Challenge.ISAACS_AWAKENING]: [
|
|
270
|
+
CollectibleType.TRINITY_SHIELD, // 243
|
|
271
|
+
CollectibleType.SPIRIT_SWORD, // 579
|
|
272
|
+
CollectibleType.MOMS_BRACELET, // 604
|
|
273
|
+
],
|
|
274
|
+
|
|
275
|
+
// 40
|
|
276
|
+
[Challenge.SEEING_DOUBLE]: [245],
|
|
277
|
+
|
|
278
|
+
// 41
|
|
279
|
+
[Challenge.PICA_RUN]: [
|
|
280
|
+
CollectibleType.MOMS_PURSE, // 139
|
|
281
|
+
CollectibleType.MOMS_BOX, // 439
|
|
282
|
+
CollectibleType.MARBLES, // 538
|
|
283
|
+
],
|
|
284
|
+
|
|
285
|
+
// 42
|
|
286
|
+
[Challenge.HOT_POTATO]: [],
|
|
287
|
+
|
|
288
|
+
// 43
|
|
289
|
+
[Challenge.CANTRIPPED]: [],
|
|
290
|
+
|
|
291
|
+
// 44
|
|
292
|
+
[Challenge.RED_REDEMPTION]: [
|
|
293
|
+
CollectibleType.DADS_KEY, // 175
|
|
294
|
+
],
|
|
295
|
+
|
|
296
|
+
// 45
|
|
297
|
+
[Challenge.DELETE_THIS]: [CollectibleType.TMTRAINER],
|
|
298
|
+
} as const satisfies Record<Challenge, readonly CollectibleType[]>;
|
|
@@ -16,7 +16,7 @@ export const CHALLENGE_NAMES = {
|
|
|
16
16
|
[Challenge.DEMO_MAN]: "Demo Man", // 9
|
|
17
17
|
[Challenge.CURSED]: "Cursed!", // 10
|
|
18
18
|
[Challenge.GLASS_CANNON]: "Glass Cannon", // 11
|
|
19
|
-
[Challenge.
|
|
19
|
+
[Challenge.WHEN_LIFE_GIVES_YOU_LEMONS]: "When Life Gives You Lemons", // 12
|
|
20
20
|
[Challenge.BEANS]: "Beans!", // 13
|
|
21
21
|
[Challenge.ITS_IN_THE_CARDS]: "It's In The Cards", // 14
|
|
22
22
|
[Challenge.SLOW_ROLL]: "Slow Roll", // 15
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { Challenge, TrinketType } from "isaac-typescript-definitions";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Contains the starting trinket for each challenge. Challenges that do not grant a starting trinket
|
|
5
|
+
* will have a value of `undefined`.
|
|
6
|
+
*
|
|
7
|
+
* Taken from the "challenges.xml" file.
|
|
8
|
+
*/
|
|
9
|
+
export const CHALLENGE_TRINKET_TYPE = {
|
|
10
|
+
[Challenge.NULL]: undefined, // 0
|
|
11
|
+
[Challenge.PITCH_BLACK]: undefined, // 1
|
|
12
|
+
[Challenge.HIGH_BROW]: TrinketType.PETRIFIED_POOP, // 2
|
|
13
|
+
[Challenge.HEAD_TRAUMA]: undefined, // 3
|
|
14
|
+
[Challenge.DARKNESS_FALLS]: undefined, // 4
|
|
15
|
+
[Challenge.TANK]: undefined, // 5
|
|
16
|
+
[Challenge.SOLAR_SYSTEM]: undefined, // 6
|
|
17
|
+
[Challenge.SUICIDE_KING]: undefined, // 7
|
|
18
|
+
[Challenge.CAT_GOT_YOUR_TONGUE]: undefined, // 8
|
|
19
|
+
[Challenge.DEMO_MAN]: TrinketType.MATCH_STICK, // 9
|
|
20
|
+
[Challenge.CURSED]: TrinketType.CHILDS_HEART, // 10
|
|
21
|
+
[Challenge.GLASS_CANNON]: undefined, // 11
|
|
22
|
+
[Challenge.WHEN_LIFE_GIVES_YOU_LEMONS]: undefined, // 12
|
|
23
|
+
[Challenge.BEANS]: undefined, // 13
|
|
24
|
+
[Challenge.ITS_IN_THE_CARDS]: undefined, // 14
|
|
25
|
+
[Challenge.SLOW_ROLL]: undefined, // 15
|
|
26
|
+
[Challenge.COMPUTER_SAVY]: undefined, // 16
|
|
27
|
+
[Challenge.WAKA_WAKA]: undefined, // 17
|
|
28
|
+
[Challenge.HOST]: TrinketType.TICK, // 18
|
|
29
|
+
[Challenge.FAMILY_MAN]: undefined, // 19
|
|
30
|
+
[Challenge.PURIST]: undefined, // 20
|
|
31
|
+
[Challenge.XXXXXXXXL]: undefined, // 21
|
|
32
|
+
[Challenge.SPEED]: undefined, // 22
|
|
33
|
+
[Challenge.BLUE_BOMBER]: undefined, // 23
|
|
34
|
+
[Challenge.PAY_TO_PLAY]: undefined, // 24
|
|
35
|
+
[Challenge.HAVE_A_HEART]: undefined, // 25
|
|
36
|
+
[Challenge.I_RULE]: undefined, // 26
|
|
37
|
+
[Challenge.BRAINS]: undefined, // 27
|
|
38
|
+
[Challenge.PRIDE_DAY]: TrinketType.RAINBOW_WORM, // 28
|
|
39
|
+
[Challenge.ONANS_STREAK]: undefined, // 29
|
|
40
|
+
[Challenge.GUARDIAN]: undefined, // 30
|
|
41
|
+
[Challenge.BACKASSWARDS]: undefined, // 31
|
|
42
|
+
[Challenge.APRILS_FOOL]: undefined, // 32
|
|
43
|
+
[Challenge.POKEY_MANS]: undefined, // 33
|
|
44
|
+
[Challenge.ULTRA_HARD]: undefined, // 34
|
|
45
|
+
[Challenge.PONG]: undefined, // 35
|
|
46
|
+
[Challenge.SCAT_MAN]: TrinketType.MYSTERIOUS_CANDY, // 36
|
|
47
|
+
[Challenge.BLOODY_MARY]: TrinketType.CHILDS_HEART, // 37
|
|
48
|
+
[Challenge.BAPTISM_BY_FIRE]: TrinketType.MAGGYS_FAITH, // 38
|
|
49
|
+
[Challenge.ISAACS_AWAKENING]: undefined, // 39
|
|
50
|
+
[Challenge.SEEING_DOUBLE]: undefined, // 40
|
|
51
|
+
[Challenge.PICA_RUN]: undefined, // 41
|
|
52
|
+
[Challenge.HOT_POTATO]: undefined, // 42
|
|
53
|
+
[Challenge.CANTRIPPED]: undefined, // 43
|
|
54
|
+
[Challenge.RED_REDEMPTION]: undefined, // 44
|
|
55
|
+
[Challenge.DELETE_THIS]: undefined, // 45
|
|
56
|
+
} as const satisfies Record<Challenge, TrinketType | undefined>;
|