isaacscript-common 17.8.0 → 18.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/index.d.ts +8 -10
- package/dist/isaacscript-common.lua +110 -112
- package/dist/src/callbacks.d.ts +1 -1
- package/dist/src/callbacks.d.ts.map +1 -1
- package/dist/src/callbacks.lua +2 -4
- package/dist/src/features.d.ts.map +1 -1
- package/dist/src/features.lua +83 -87
- package/dist/src/functions/players.d.ts +8 -1
- package/dist/src/functions/players.d.ts.map +1 -1
- package/dist/src/functions/players.lua +24 -13
- package/dist/src/functions/utils.d.ts +0 -9
- package/dist/src/functions/utils.d.ts.map +1 -1
- package/dist/src/functions/utils.lua +0 -9
- package/package.json +1 -1
- package/src/callbacks.ts +5 -4
- package/src/features.ts +7 -6
- package/src/functions/players.ts +13 -0
- package/src/functions/utils.ts +0 -16
package/dist/index.d.ts
CHANGED
|
@@ -11283,16 +11283,6 @@ export declare function newChargeBarSprites(maxCharges: int): ChargeBarSprites;
|
|
|
11283
11283
|
*/
|
|
11284
11284
|
export declare function newCollectibleSprite(collectibleType: CollectibleType): Sprite;
|
|
11285
11285
|
|
|
11286
|
-
/**
|
|
11287
|
-
* Helper function for creating objects that represent a mapping of an enum value to some other
|
|
11288
|
-
* value in a type-safe way.
|
|
11289
|
-
*
|
|
11290
|
-
* This function will ensure that the provided object has a key for each value in the enum.
|
|
11291
|
-
*
|
|
11292
|
-
* After the `satisfies` operator is released in TypeScript 4.9, this function should be deleted.
|
|
11293
|
-
*/
|
|
11294
|
-
export declare function newObjectWithEnumKeys<Enum extends number | string, T extends Record<Enum, unknown>>(theEnum: Record<string, Enum>, obj: T): T;
|
|
11295
|
-
|
|
11296
11286
|
export declare function newPickingUpItem(): PickingUpItem;
|
|
11297
11287
|
|
|
11298
11288
|
/** Returns a `PlayerHealth` object with all zeros. */
|
|
@@ -11690,6 +11680,14 @@ export declare function playerConvertSoulHeartsToBlackHearts(player: EntityPlaye
|
|
|
11690
11680
|
*/
|
|
11691
11681
|
export declare function playerHasCollectible(player: EntityPlayer, ...collectibleTypes: CollectibleType[]): boolean;
|
|
11692
11682
|
|
|
11683
|
+
/**
|
|
11684
|
+
* Helper function to check to see if a player has one or more transformations.
|
|
11685
|
+
*
|
|
11686
|
+
* This function is variadic, meaning that you can supply as many transformations as you want to
|
|
11687
|
+
* check for. Returns true if the player has any of the supplied transformations.
|
|
11688
|
+
*/
|
|
11689
|
+
export declare function playerHasForm(player: EntityPlayer, ...playerForms: PlayerForm[]): boolean;
|
|
11690
|
+
|
|
11693
11691
|
/**
|
|
11694
11692
|
* Helper function to see if the player is out of health.
|
|
11695
11693
|
*
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
--[[
|
|
2
2
|
|
|
3
|
-
isaacscript-common
|
|
3
|
+
isaacscript-common 18.0.0
|
|
4
4
|
|
|
5
5
|
This is the "isaacscript-common" library, which was created with the IsaacScript tool.
|
|
6
6
|
|
|
@@ -15351,9 +15351,6 @@ end
|
|
|
15351
15351
|
function ____exports.isVanillaConsoleCommand(self, commandName)
|
|
15352
15352
|
return CONSOLE_COMMANDS_SET:has(commandName)
|
|
15353
15353
|
end
|
|
15354
|
-
function ____exports.newObjectWithEnumKeys(self, theEnum, obj)
|
|
15355
|
-
return obj
|
|
15356
|
-
end
|
|
15357
15354
|
function ____exports.printConsole(self, msg)
|
|
15358
15355
|
Isaac.ConsoleOutput(msg .. "\n")
|
|
15359
15356
|
end
|
|
@@ -21756,12 +21753,19 @@ function ____exports.playerHasCollectible(self, player, ...)
|
|
|
21756
21753
|
function(____, collectibleType) return player:HasCollectible(collectibleType) end
|
|
21757
21754
|
)
|
|
21758
21755
|
end
|
|
21756
|
+
function ____exports.playerHasForm(self, player, ...)
|
|
21757
|
+
local playerForms = {...}
|
|
21758
|
+
return __TS__ArraySome(
|
|
21759
|
+
playerForms,
|
|
21760
|
+
function(____, playerForm) return player:HasPlayerForm(playerForm) end
|
|
21761
|
+
)
|
|
21762
|
+
end
|
|
21759
21763
|
function ____exports.removeAllActiveItems(self, player)
|
|
21760
21764
|
for ____, activeSlot in ipairs(getEnumValues(nil, ActiveSlot)) do
|
|
21761
21765
|
do
|
|
21762
21766
|
local collectibleType = player:GetActiveItem(activeSlot)
|
|
21763
21767
|
if collectibleType == CollectibleType.NULL then
|
|
21764
|
-
goto
|
|
21768
|
+
goto __continue93
|
|
21765
21769
|
end
|
|
21766
21770
|
local hasCollectible
|
|
21767
21771
|
repeat
|
|
@@ -21771,7 +21775,7 @@ function ____exports.removeAllActiveItems(self, player)
|
|
|
21771
21775
|
end
|
|
21772
21776
|
until not hasCollectible
|
|
21773
21777
|
end
|
|
21774
|
-
::
|
|
21778
|
+
::__continue93::
|
|
21775
21779
|
end
|
|
21776
21780
|
end
|
|
21777
21781
|
function ____exports.removeAllPlayerTrinkets(self, player)
|
|
@@ -21779,7 +21783,7 @@ function ____exports.removeAllPlayerTrinkets(self, player)
|
|
|
21779
21783
|
do
|
|
21780
21784
|
local trinketType = player:GetTrinket(trinketSlot)
|
|
21781
21785
|
if trinketType == TrinketType.NULL then
|
|
21782
|
-
goto
|
|
21786
|
+
goto __continue98
|
|
21783
21787
|
end
|
|
21784
21788
|
local hasTrinket
|
|
21785
21789
|
repeat
|
|
@@ -21789,7 +21793,7 @@ function ____exports.removeAllPlayerTrinkets(self, player)
|
|
|
21789
21793
|
end
|
|
21790
21794
|
until not hasTrinket
|
|
21791
21795
|
end
|
|
21792
|
-
::
|
|
21796
|
+
::__continue98::
|
|
21793
21797
|
end
|
|
21794
21798
|
end
|
|
21795
21799
|
function ____exports.removeCollectibleCostume(self, player, collectibleType)
|
|
@@ -21843,9 +21847,9 @@ function ____exports.setActiveItem(self, player, collectibleType, activeSlot, ch
|
|
|
21843
21847
|
itemPool:RemoveCollectible(collectibleType)
|
|
21844
21848
|
end
|
|
21845
21849
|
repeat
|
|
21846
|
-
local
|
|
21847
|
-
local
|
|
21848
|
-
if
|
|
21850
|
+
local ____switch117 = activeSlot
|
|
21851
|
+
local ____cond117 = ____switch117 == ActiveSlot.PRIMARY
|
|
21852
|
+
if ____cond117 then
|
|
21849
21853
|
do
|
|
21850
21854
|
if primaryCollectibleType ~= CollectibleType.NULL then
|
|
21851
21855
|
player:RemoveCollectible(primaryCollectibleType)
|
|
@@ -21854,8 +21858,8 @@ function ____exports.setActiveItem(self, player, collectibleType, activeSlot, ch
|
|
|
21854
21858
|
break
|
|
21855
21859
|
end
|
|
21856
21860
|
end
|
|
21857
|
-
|
|
21858
|
-
if
|
|
21861
|
+
____cond117 = ____cond117 or ____switch117 == ActiveSlot.SECONDARY
|
|
21862
|
+
if ____cond117 then
|
|
21859
21863
|
do
|
|
21860
21864
|
if primaryCollectibleType ~= CollectibleType.NULL then
|
|
21861
21865
|
player:RemoveCollectible(primaryCollectibleType)
|
|
@@ -21870,16 +21874,16 @@ function ____exports.setActiveItem(self, player, collectibleType, activeSlot, ch
|
|
|
21870
21874
|
break
|
|
21871
21875
|
end
|
|
21872
21876
|
end
|
|
21873
|
-
|
|
21874
|
-
if
|
|
21877
|
+
____cond117 = ____cond117 or ____switch117 == ActiveSlot.POCKET
|
|
21878
|
+
if ____cond117 then
|
|
21875
21879
|
do
|
|
21876
21880
|
player:SetPocketActiveItem(collectibleType, activeSlot, keepInPools)
|
|
21877
21881
|
player:SetActiveCharge(charge, activeSlot)
|
|
21878
21882
|
break
|
|
21879
21883
|
end
|
|
21880
21884
|
end
|
|
21881
|
-
|
|
21882
|
-
if
|
|
21885
|
+
____cond117 = ____cond117 or ____switch117 == ActiveSlot.POCKET_SINGLE_USE
|
|
21886
|
+
if ____cond117 then
|
|
21883
21887
|
do
|
|
21884
21888
|
player:SetPocketActiveItem(collectibleType, activeSlot, keepInPools)
|
|
21885
21889
|
break
|
|
@@ -30883,6 +30887,10 @@ do
|
|
|
30883
30887
|
local PreNPCUpdateFilter = ____PreNPCUpdateFilter.PreNPCUpdateFilter
|
|
30884
30888
|
____exports.PreNPCUpdateFilter = PreNPCUpdateFilter
|
|
30885
30889
|
end
|
|
30890
|
+
return ____exports
|
|
30891
|
+
end,
|
|
30892
|
+
["src.types.AnyClass"] = function(...)
|
|
30893
|
+
local ____exports = {}
|
|
30886
30894
|
return ____exports
|
|
30887
30895
|
end,
|
|
30888
30896
|
["src.callbacks"] = function(...)
|
|
@@ -30894,9 +30902,7 @@ local ____ModCallbackCustom = require("src.enums.ModCallbackCustom")
|
|
|
30894
30902
|
local ModCallbackCustom = ____ModCallbackCustom.ModCallbackCustom
|
|
30895
30903
|
local ____enums = require("src.functions.enums")
|
|
30896
30904
|
local getEnumValues = ____enums.getEnumValues
|
|
30897
|
-
local
|
|
30898
|
-
local newObjectWithEnumKeys = ____utils.newObjectWithEnumKeys
|
|
30899
|
-
local MOD_CALLBACK_CUSTOM_TO_CLASS = newObjectWithEnumKeys(nil, ModCallbackCustom, {
|
|
30905
|
+
local MOD_CALLBACK_CUSTOM_TO_CLASS = {
|
|
30900
30906
|
[ModCallbackCustom.ENTITY_TAKE_DMG_FILTER] = cc.EntityTakeDmgFilter,
|
|
30901
30907
|
[ModCallbackCustom.POST_AMBUSH_FINISHED] = cc.PostAmbushFinished,
|
|
30902
30908
|
[ModCallbackCustom.POST_AMBUSH_STARTED] = cc.PostAmbushStarted,
|
|
@@ -30997,7 +31003,7 @@ local MOD_CALLBACK_CUSTOM_TO_CLASS = newObjectWithEnumKeys(nil, ModCallbackCusto
|
|
|
30997
31003
|
[ModCallbackCustom.PRE_NEW_LEVEL] = cc.PreNewLevel,
|
|
30998
31004
|
[ModCallbackCustom.PRE_NPC_COLLISION_FILTER] = cc.PreNPCCollisionFilter,
|
|
30999
31005
|
[ModCallbackCustom.PRE_NPC_UPDATE_FILTER] = cc.PreNPCUpdateFilter
|
|
31000
|
-
}
|
|
31006
|
+
}
|
|
31001
31007
|
function ____exports.getCallbacks(self)
|
|
31002
31008
|
local instantiatedClasses = {}
|
|
31003
31009
|
for ____, modCallbackCustom in ipairs(getEnumValues(nil, ModCallbackCustom)) do
|
|
@@ -34533,10 +34539,6 @@ return ____exports
|
|
|
34533
34539
|
["src.classes.features.other.saveDataManager.constants"] = function(...)
|
|
34534
34540
|
local ____exports = {}
|
|
34535
34541
|
____exports.SAVE_DATA_MANAGER_DEBUG = false
|
|
34536
|
-
return ____exports
|
|
34537
|
-
end,
|
|
34538
|
-
["src.types.AnyClass"] = function(...)
|
|
34539
|
-
local ____exports = {}
|
|
34540
34542
|
return ____exports
|
|
34541
34543
|
end,
|
|
34542
34544
|
["src.objects.isaacAPIClassTypeToBrand"] = function(...)
|
|
@@ -48709,7 +48711,6 @@ local ISCFeature = ____ISCFeature.ISCFeature
|
|
|
48709
48711
|
local ____ModCallbackCustom = require("src.enums.ModCallbackCustom")
|
|
48710
48712
|
local ModCallbackCustom = ____ModCallbackCustom.ModCallbackCustom
|
|
48711
48713
|
local ____utils = require("src.functions.utils")
|
|
48712
|
-
local newObjectWithEnumKeys = ____utils.newObjectWithEnumKeys
|
|
48713
48714
|
local validateInterfaceMatchesEnum = ____utils.validateInterfaceMatchesEnum
|
|
48714
48715
|
validateInterfaceMatchesEnum(nil)
|
|
48715
48716
|
function ____exports.getFeatures(self, mod, callbacks)
|
|
@@ -48749,92 +48750,89 @@ function ____exports.getFeatures(self, mod, callbacks)
|
|
|
48749
48750
|
runNextRoom,
|
|
48750
48751
|
stageHistory
|
|
48751
48752
|
)
|
|
48752
|
-
|
|
48753
|
-
|
|
48754
|
-
ISCFeature,
|
|
48755
|
-
|
|
48756
|
-
|
|
48757
|
-
|
|
48758
|
-
|
|
48759
|
-
|
|
48760
|
-
[
|
|
48761
|
-
|
|
48762
|
-
|
|
48763
|
-
|
|
48764
|
-
|
|
48765
|
-
|
|
48766
|
-
|
|
48767
|
-
|
|
48768
|
-
|
|
48769
|
-
|
|
48770
|
-
|
|
48771
|
-
|
|
48772
|
-
|
|
48773
|
-
|
|
48774
|
-
|
|
48775
|
-
|
|
48776
|
-
|
|
48777
|
-
[
|
|
48778
|
-
|
|
48779
|
-
|
|
48780
|
-
|
|
48781
|
-
|
|
48782
|
-
|
|
48783
|
-
|
|
48784
|
-
|
|
48785
|
-
|
|
48786
|
-
|
|
48787
|
-
|
|
48788
|
-
|
|
48789
|
-
|
|
48790
|
-
|
|
48791
|
-
|
|
48792
|
-
|
|
48793
|
-
|
|
48794
|
-
|
|
48795
|
-
|
|
48796
|
-
|
|
48797
|
-
|
|
48798
|
-
|
|
48799
|
-
|
|
48800
|
-
|
|
48801
|
-
|
|
48802
|
-
|
|
48803
|
-
|
|
48804
|
-
|
|
48805
|
-
|
|
48806
|
-
|
|
48807
|
-
|
|
48808
|
-
|
|
48809
|
-
|
|
48810
|
-
|
|
48811
|
-
|
|
48812
|
-
|
|
48813
|
-
|
|
48814
|
-
|
|
48815
|
-
|
|
48816
|
-
|
|
48817
|
-
|
|
48818
|
-
|
|
48819
|
-
|
|
48820
|
-
|
|
48821
|
-
|
|
48822
|
-
|
|
48823
|
-
|
|
48824
|
-
|
|
48825
|
-
|
|
48826
|
-
|
|
48827
|
-
|
|
48828
|
-
|
|
48829
|
-
|
|
48830
|
-
|
|
48831
|
-
|
|
48832
|
-
|
|
48833
|
-
|
|
48834
|
-
|
|
48835
|
-
[ISCFeature.TAINTED_LAZARUS_PLAYERS] = __TS__New(TaintedLazarusPlayers)
|
|
48836
|
-
}
|
|
48837
|
-
)
|
|
48753
|
+
local features = {
|
|
48754
|
+
[ISCFeature.CUSTOM_REVIVE] = __TS__New(CustomRevive, callbacks[ModCallbackCustom.PRE_CUSTOM_REVIVE], callbacks[ModCallbackCustom.POST_CUSTOM_REVIVE], runInNFrames),
|
|
48755
|
+
[ISCFeature.ESAU_JR_DETECTION] = __TS__New(EsauJrDetection, callbacks[ModCallbackCustom.POST_ESAU_JR], callbacks[ModCallbackCustom.POST_FIRST_ESAU_JR]),
|
|
48756
|
+
[ISCFeature.FLIP_DETECTION] = __TS__New(FlipDetection, callbacks[ModCallbackCustom.POST_FLIP], callbacks[ModCallbackCustom.POST_FIRST_FLIP]),
|
|
48757
|
+
[ISCFeature.GRID_ENTITY_COLLISION_DETECTION] = __TS__New(GridEntityCollisionDetection, callbacks[ModCallbackCustom.POST_GRID_ENTITY_COLLISION], callbacks[ModCallbackCustom.POST_GRID_ENTITY_CUSTOM_COLLISION], customGridEntities),
|
|
48758
|
+
[ISCFeature.GRID_ENTITY_UPDATE_DETECTION] = __TS__New(
|
|
48759
|
+
GridEntityUpdateDetection,
|
|
48760
|
+
callbacks[ModCallbackCustom.POST_GRID_ENTITY_INIT],
|
|
48761
|
+
callbacks[ModCallbackCustom.POST_GRID_ENTITY_CUSTOM_INIT],
|
|
48762
|
+
callbacks[ModCallbackCustom.POST_GRID_ENTITY_UPDATE],
|
|
48763
|
+
callbacks[ModCallbackCustom.POST_GRID_ENTITY_CUSTOM_UPDATE],
|
|
48764
|
+
callbacks[ModCallbackCustom.POST_GRID_ENTITY_REMOVE],
|
|
48765
|
+
callbacks[ModCallbackCustom.POST_GRID_ENTITY_CUSTOM_REMOVE],
|
|
48766
|
+
callbacks[ModCallbackCustom.POST_GRID_ENTITY_STATE_CHANGED],
|
|
48767
|
+
callbacks[ModCallbackCustom.POST_GRID_ENTITY_CUSTOM_STATE_CHANGED],
|
|
48768
|
+
callbacks[ModCallbackCustom.POST_GRID_ENTITY_BROKEN],
|
|
48769
|
+
callbacks[ModCallbackCustom.POST_GRID_ENTITY_CUSTOM_BROKEN],
|
|
48770
|
+
customGridEntities
|
|
48771
|
+
),
|
|
48772
|
+
[ISCFeature.GRID_ENTITY_RENDER_DETECTION] = __TS__New(GridEntityRenderDetection, callbacks[ModCallbackCustom.POST_GRID_ENTITY_RENDER], callbacks[ModCallbackCustom.POST_GRID_ENTITY_CUSTOM_RENDER], customGridEntities),
|
|
48773
|
+
[ISCFeature.GAME_REORDERED_CALLBACKS] = gameReorderedCallbacks,
|
|
48774
|
+
[ISCFeature.ITEM_PICKUP_DETECTION] = __TS__New(ItemPickupDetection, callbacks[ModCallbackCustom.POST_ITEM_PICKUP], callbacks[ModCallbackCustom.PRE_ITEM_PICKUP]),
|
|
48775
|
+
[ISCFeature.PLAYER_COLLECTIBLE_DETECTION] = __TS__New(
|
|
48776
|
+
PlayerCollectibleDetection,
|
|
48777
|
+
callbacks[ModCallbackCustom.POST_PLAYER_COLLECTIBLE_ADDED],
|
|
48778
|
+
callbacks[ModCallbackCustom.POST_PLAYER_COLLECTIBLE_REMOVED],
|
|
48779
|
+
moddedElementSets,
|
|
48780
|
+
runInNFrames
|
|
48781
|
+
),
|
|
48782
|
+
[ISCFeature.PLAYER_REORDERED_CALLBACKS] = __TS__New(PlayerReorderedCallbacks, callbacks[ModCallbackCustom.POST_PEFFECT_UPDATE_REORDERED], callbacks[ModCallbackCustom.POST_PLAYER_RENDER_REORDERED], callbacks[ModCallbackCustom.POST_PLAYER_UPDATE_REORDERED]),
|
|
48783
|
+
[ISCFeature.SLOT_RENDER_DETECTION] = __TS__New(SlotRenderDetection, callbacks[ModCallbackCustom.POST_SLOT_RENDER], callbacks[ModCallbackCustom.POST_SLOT_ANIMATION_CHANGED]),
|
|
48784
|
+
[ISCFeature.SLOT_UPDATE_DETECTION] = __TS__New(SlotUpdateDetection, callbacks[ModCallbackCustom.POST_SLOT_INIT], callbacks[ModCallbackCustom.POST_SLOT_UPDATE]),
|
|
48785
|
+
[ISCFeature.CHARACTER_HEALTH_CONVERSION] = __TS__New(CharacterHealthConversion),
|
|
48786
|
+
[ISCFeature.CHARACTER_STATS] = __TS__New(CharacterStats),
|
|
48787
|
+
[ISCFeature.COLLECTIBLE_ITEM_POOL_TYPE] = __TS__New(CollectibleItemPoolType, pickupIndexCreation),
|
|
48788
|
+
[ISCFeature.CUSTOM_GRID_ENTITIES] = customGridEntities,
|
|
48789
|
+
[ISCFeature.CUSTOM_ITEM_POOLS] = __TS__New(CustomItemPools),
|
|
48790
|
+
[ISCFeature.CUSTOM_HOTKEYS] = __TS__New(CustomHotkeys),
|
|
48791
|
+
[ISCFeature.CUSTOM_PICKUPS] = __TS__New(CustomPickups),
|
|
48792
|
+
[ISCFeature.CUSTOM_STAGES] = __TS__New(
|
|
48793
|
+
CustomStages,
|
|
48794
|
+
customGridEntities,
|
|
48795
|
+
customTrapdoors,
|
|
48796
|
+
disableAllSound,
|
|
48797
|
+
gameReorderedCallbacks,
|
|
48798
|
+
pause,
|
|
48799
|
+
runInNFrames
|
|
48800
|
+
),
|
|
48801
|
+
[ISCFeature.CUSTOM_TRAPDOORS] = customTrapdoors,
|
|
48802
|
+
[ISCFeature.DEBUG_DISPLAY] = __TS__New(DebugDisplay, mod),
|
|
48803
|
+
[ISCFeature.DEPLOY_JSON_ROOM] = __TS__New(DeployJSONRoom, preventGridEntityRespawn, spawnCollectible),
|
|
48804
|
+
[ISCFeature.DISABLE_ALL_SOUND] = disableAllSound,
|
|
48805
|
+
[ISCFeature.DISABLE_INPUTS] = disableInputs,
|
|
48806
|
+
[ISCFeature.FADE_IN_REMOVER] = __TS__New(FadeInRemover),
|
|
48807
|
+
[ISCFeature.FAST_RESET] = __TS__New(FastReset),
|
|
48808
|
+
[ISCFeature.FLYING_DETECTION] = __TS__New(FlyingDetection, moddedElementSets),
|
|
48809
|
+
[ISCFeature.FORGOTTEN_SWITCH] = __TS__New(ForgottenSwitch, pressInput),
|
|
48810
|
+
[ISCFeature.EXTRA_CONSOLE_COMMANDS] = __TS__New(ExtraConsoleCommands),
|
|
48811
|
+
[ISCFeature.ITEM_POOL_DETECTION] = itemPoolDetection,
|
|
48812
|
+
[ISCFeature.MODDED_ELEMENT_DETECTION] = moddedElementDetection,
|
|
48813
|
+
[ISCFeature.MODDED_ELEMENT_SETS] = moddedElementSets,
|
|
48814
|
+
[ISCFeature.NO_SIREN_STEAL] = __TS__New(NoSirenSteal),
|
|
48815
|
+
[ISCFeature.PAUSE] = pause,
|
|
48816
|
+
[ISCFeature.PERSISTENT_ENTITIES] = __TS__New(PersistentEntities, roomHistory),
|
|
48817
|
+
[ISCFeature.PICKUP_INDEX_CREATION] = pickupIndexCreation,
|
|
48818
|
+
[ISCFeature.PLAYER_INVENTORY] = __TS__New(PlayerInventory),
|
|
48819
|
+
[ISCFeature.PONY_DETECTION] = ponyDetection,
|
|
48820
|
+
[ISCFeature.PRESS_INPUT] = pressInput,
|
|
48821
|
+
[ISCFeature.PREVENT_CHILD_ENTITIES] = __TS__New(PreventChildEntities),
|
|
48822
|
+
[ISCFeature.PREVENT_COLLECTIBLE_ROTATION] = preventCollectibleRotation,
|
|
48823
|
+
[ISCFeature.PREVENT_GRID_ENTITY_RESPAWN] = preventGridEntityRespawn,
|
|
48824
|
+
[ISCFeature.ROOM_CLEAR_FRAME] = roomClearFrame,
|
|
48825
|
+
[ISCFeature.ROOM_HISTORY] = roomHistory,
|
|
48826
|
+
[ISCFeature.RUN_IN_N_FRAMES] = runInNFrames,
|
|
48827
|
+
[ISCFeature.RUN_NEXT_ROOM] = runNextRoom,
|
|
48828
|
+
[ISCFeature.SAVE_DATA_MANAGER] = saveDataManager,
|
|
48829
|
+
[ISCFeature.SPAWN_ALT_ROCK_REWARDS] = __TS__New(SpawnRockAltRewards, itemPoolDetection),
|
|
48830
|
+
[ISCFeature.SPAWN_COLLECTIBLE] = spawnCollectible,
|
|
48831
|
+
[ISCFeature.STAGE_HISTORY] = stageHistory,
|
|
48832
|
+
[ISCFeature.START_AMBUSH] = __TS__New(StartAmbush, runInNFrames),
|
|
48833
|
+
[ISCFeature.TAINTED_LAZARUS_PLAYERS] = __TS__New(TaintedLazarusPlayers)
|
|
48834
|
+
}
|
|
48835
|
+
return features
|
|
48838
48836
|
end
|
|
48839
48837
|
return ____exports
|
|
48840
48838
|
end,
|
package/dist/src/callbacks.d.ts
CHANGED
|
@@ -102,7 +102,7 @@ declare const MOD_CALLBACK_CUSTOM_TO_CLASS: {
|
|
|
102
102
|
readonly 99: typeof cc.PreNPCUpdateFilter;
|
|
103
103
|
};
|
|
104
104
|
export type ModCallbackCustomToClass = {
|
|
105
|
-
readonly [Key in keyof typeof MOD_CALLBACK_CUSTOM_TO_CLASS]: InstanceType<typeof MOD_CALLBACK_CUSTOM_TO_CLASS[Key]>;
|
|
105
|
+
readonly [Key in keyof typeof MOD_CALLBACK_CUSTOM_TO_CLASS]: InstanceType<(typeof MOD_CALLBACK_CUSTOM_TO_CLASS)[Key]>;
|
|
106
106
|
};
|
|
107
107
|
export declare function getCallbacks(): ModCallbackCustomToClass;
|
|
108
108
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"callbacks.d.ts","sourceRoot":"","sources":["../../src/callbacks.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"callbacks.d.ts","sourceRoot":"","sources":["../../src/callbacks.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAMxC,QAAA,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkH8B,CAAC;AAEjE,MAAM,MAAM,wBAAwB,GAAG;IACrC,QAAQ,EAAE,GAAG,IAAI,MAAM,OAAO,4BAA4B,GAAG,YAAY,CACvE,CAAC,OAAO,4BAA4B,CAAC,CAAC,GAAG,CAAC,CAC3C;CACF,CAAC;AAEF,wBAAgB,YAAY,IAAI,wBAAwB,CASvD"}
|
package/dist/src/callbacks.lua
CHANGED
|
@@ -6,9 +6,7 @@ local ____ModCallbackCustom = require("src.enums.ModCallbackCustom")
|
|
|
6
6
|
local ModCallbackCustom = ____ModCallbackCustom.ModCallbackCustom
|
|
7
7
|
local ____enums = require("src.functions.enums")
|
|
8
8
|
local getEnumValues = ____enums.getEnumValues
|
|
9
|
-
local
|
|
10
|
-
local newObjectWithEnumKeys = ____utils.newObjectWithEnumKeys
|
|
11
|
-
local MOD_CALLBACK_CUSTOM_TO_CLASS = newObjectWithEnumKeys(nil, ModCallbackCustom, {
|
|
9
|
+
local MOD_CALLBACK_CUSTOM_TO_CLASS = {
|
|
12
10
|
[ModCallbackCustom.ENTITY_TAKE_DMG_FILTER] = cc.EntityTakeDmgFilter,
|
|
13
11
|
[ModCallbackCustom.POST_AMBUSH_FINISHED] = cc.PostAmbushFinished,
|
|
14
12
|
[ModCallbackCustom.POST_AMBUSH_STARTED] = cc.PostAmbushStarted,
|
|
@@ -109,7 +107,7 @@ local MOD_CALLBACK_CUSTOM_TO_CLASS = newObjectWithEnumKeys(nil, ModCallbackCusto
|
|
|
109
107
|
[ModCallbackCustom.PRE_NEW_LEVEL] = cc.PreNewLevel,
|
|
110
108
|
[ModCallbackCustom.PRE_NPC_COLLISION_FILTER] = cc.PreNPCCollisionFilter,
|
|
111
109
|
[ModCallbackCustom.PRE_NPC_UPDATE_FILTER] = cc.PreNPCUpdateFilter
|
|
112
|
-
}
|
|
110
|
+
}
|
|
113
111
|
function ____exports.getCallbacks(self)
|
|
114
112
|
local instantiatedClasses = {}
|
|
115
113
|
for ____, modCallbackCustom in ipairs(getEnumValues(nil, ModCallbackCustom)) do
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"features.d.ts","sourceRoot":"","sources":["../../src/features.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"features.d.ts","sourceRoot":"","sources":["../../src/features.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,qDAAqD,CAAC;AACzF,OAAO,EAAE,YAAY,EAAE,MAAM,+CAA+C,CAAC;AAC7E,OAAO,EAAE,eAAe,EAAE,MAAM,kDAAkD,CAAC;AACnF,OAAO,EAAE,aAAa,EAAE,MAAM,gDAAgD,CAAC;AAC/E,OAAO,EAAE,sBAAsB,EAAE,MAAM,yDAAyD,CAAC;AACjG,OAAO,EAAE,4BAA4B,EAAE,MAAM,+DAA+D,CAAC;AAC7G,OAAO,EAAE,yBAAyB,EAAE,MAAM,4DAA4D,CAAC;AACvG,OAAO,EAAE,yBAAyB,EAAE,MAAM,4DAA4D,CAAC;AACvG,OAAO,EAAE,mBAAmB,EAAE,MAAM,sDAAsD,CAAC;AAC3F,OAAO,EAAE,0BAA0B,EAAE,MAAM,6DAA6D,CAAC;AACzG,OAAO,EAAE,wBAAwB,EAAE,MAAM,2DAA2D,CAAC;AACrG,OAAO,EAAE,mBAAmB,EAAE,MAAM,sDAAsD,CAAC;AAC3F,OAAO,EAAE,mBAAmB,EAAE,MAAM,sDAAsD,CAAC;AAC3F,OAAO,EAAE,yBAAyB,EAAE,MAAM,oDAAoD,CAAC;AAC/F,OAAO,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,EAAE,uBAAuB,EAAE,MAAM,kDAAkD,CAAC;AAC3F,OAAO,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAC;AACvE,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAC3E,OAAO,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAC3E,OAAO,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAC3E,OAAO,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAC;AACvE,OAAO,EAAE,oBAAoB,EAAE,MAAM,+CAA+C,CAAC;AACrF,OAAO,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAC;AACvE,OAAO,EAAE,SAAS,EAAE,MAAM,oCAAoC,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAC3E,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAC3E,OAAO,EAAE,iBAAiB,EAAE,MAAM,4CAA4C,CAAC;AAC/E,OAAO,EAAE,sBAAsB,EAAE,MAAM,iDAAiD,CAAC;AACzF,OAAO,EAAE,iBAAiB,EAAE,MAAM,4CAA4C,CAAC;AAC/E,OAAO,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AACrE,OAAO,EAAE,KAAK,EAAE,MAAM,gCAAgC,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,6CAA6C,CAAC;AACjF,OAAO,EAAE,mBAAmB,EAAE,MAAM,8CAA8C,CAAC;AACnF,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAC3E,OAAO,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAC;AACvE,OAAO,EAAE,UAAU,EAAE,MAAM,qCAAqC,CAAC;AACjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,+CAA+C,CAAC;AACrF,OAAO,EAAE,0BAA0B,EAAE,MAAM,qDAAqD,CAAC;AACjG,OAAO,EAAE,wBAAwB,EAAE,MAAM,mDAAmD,CAAC;AAC7F,OAAO,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AACrE,OAAO,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAC3E,OAAO,EAAE,gBAAgB,EAAE,MAAM,2CAA2C,CAAC;AAC7E,OAAO,EAAE,mBAAmB,EAAE,MAAM,8CAA8C,CAAC;AACnF,OAAO,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AACrE,OAAO,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AACnE,OAAO,EAAE,qBAAqB,EAAE,MAAM,gDAAgD,CAAC;AAEvF,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAGhD,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AAGjF,MAAM,WAAW,iBAAiB;IAEhC,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,YAAY,CAAC;IACzC,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,eAAe,CAAC;IAChD,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,aAAa,CAAC;IAC3C,CAAC,UAAU,CAAC,+BAA+B,CAAC,EAAE,4BAA4B,CAAC;IAC3E,CAAC,UAAU,CAAC,4BAA4B,CAAC,EAAE,yBAAyB,CAAC;IACrE,CAAC,UAAU,CAAC,4BAA4B,CAAC,EAAE,yBAAyB,CAAC;IACrE,CAAC,UAAU,CAAC,wBAAwB,CAAC,EAAE,sBAAsB,CAAC;IAC9D,CAAC,UAAU,CAAC,qBAAqB,CAAC,EAAE,mBAAmB,CAAC;IACxD,CAAC,UAAU,CAAC,4BAA4B,CAAC,EAAE,0BAA0B,CAAC;IACtE,CAAC,UAAU,CAAC,0BAA0B,CAAC,EAAE,wBAAwB,CAAC;IAClE,CAAC,UAAU,CAAC,qBAAqB,CAAC,EAAE,mBAAmB,CAAC;IACxD,CAAC,UAAU,CAAC,qBAAqB,CAAC,EAAE,mBAAmB,CAAC;IAGxD,CAAC,UAAU,CAAC,2BAA2B,CAAC,EAAE,yBAAyB,CAAC;IACpE,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,cAAc,CAAC;IAC7C,CAAC,UAAU,CAAC,0BAA0B,CAAC,EAAE,uBAAuB,CAAC;IACjE,CAAC,UAAU,CAAC,oBAAoB,CAAC,EAAE,kBAAkB,CAAC;IACtD,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,eAAe,CAAC;IAChD,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,aAAa,CAAC;IAC3C,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,aAAa,CAAC;IAC3C,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,YAAY,CAAC;IACzC,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,eAAe,CAAC;IAC/C,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,YAAY,CAAC;IACzC,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,cAAc,CAAC;IAC9C,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,eAAe,CAAC;IAChD,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,aAAa,CAAC;IAC3C,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,aAAa,CAAC;IAC5C,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,SAAS,CAAC;IACnC,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,eAAe,CAAC;IAC/C,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,eAAe,CAAC;IAC/C,CAAC,UAAU,CAAC,sBAAsB,CAAC,EAAE,oBAAoB,CAAC;IAC1D,CAAC,UAAU,CAAC,mBAAmB,CAAC,EAAE,iBAAiB,CAAC;IACpD,CAAC,UAAU,CAAC,wBAAwB,CAAC,EAAE,sBAAsB,CAAC;IAC9D,CAAC,UAAU,CAAC,mBAAmB,CAAC,EAAE,iBAAiB,CAAC;IACpD,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,YAAY,CAAC;IAC1C,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC;IAC1B,CAAC,UAAU,CAAC,mBAAmB,CAAC,EAAE,kBAAkB,CAAC;IACrD,CAAC,UAAU,CAAC,qBAAqB,CAAC,EAAE,mBAAmB,CAAC;IACxD,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,eAAe,CAAC;IAC/C,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,aAAa,CAAC;IAC3C,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,UAAU,CAAC;IACrC,CAAC,UAAU,CAAC,sBAAsB,CAAC,EAAE,oBAAoB,CAAC;IAC1D,CAAC,UAAU,CAAC,4BAA4B,CAAC,EAAE,0BAA0B,CAAC;IACtE,CAAC,UAAU,CAAC,2BAA2B,CAAC,EAAE,wBAAwB,CAAC;IACnE,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,cAAc,CAAC;IAC9C,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,WAAW,CAAC;IACvC,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,YAAY,CAAC;IAC3C,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,WAAW,CAAC;IACxC,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,eAAe,CAAC;IAChD,CAAC,UAAU,CAAC,sBAAsB,CAAC,EAAE,mBAAmB,CAAC;IACzD,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,gBAAgB,CAAC;IACjD,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,YAAY,CAAC;IACzC,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,WAAW,CAAC;IACvC,CAAC,UAAU,CAAC,uBAAuB,CAAC,EAAE,qBAAqB,CAAC;CAC7D;AAKD,wBAAgB,WAAW,CACzB,GAAG,EAAE,oBAAoB,EACzB,SAAS,EAAE,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuKpC"}
|
package/dist/src/features.lua
CHANGED
|
@@ -112,7 +112,6 @@ local ISCFeature = ____ISCFeature.ISCFeature
|
|
|
112
112
|
local ____ModCallbackCustom = require("src.enums.ModCallbackCustom")
|
|
113
113
|
local ModCallbackCustom = ____ModCallbackCustom.ModCallbackCustom
|
|
114
114
|
local ____utils = require("src.functions.utils")
|
|
115
|
-
local newObjectWithEnumKeys = ____utils.newObjectWithEnumKeys
|
|
116
115
|
local validateInterfaceMatchesEnum = ____utils.validateInterfaceMatchesEnum
|
|
117
116
|
validateInterfaceMatchesEnum(nil)
|
|
118
117
|
function ____exports.getFeatures(self, mod, callbacks)
|
|
@@ -152,91 +151,88 @@ function ____exports.getFeatures(self, mod, callbacks)
|
|
|
152
151
|
runNextRoom,
|
|
153
152
|
stageHistory
|
|
154
153
|
)
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
ISCFeature,
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
[
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
[
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
[ISCFeature.TAINTED_LAZARUS_PLAYERS] = __TS__New(TaintedLazarusPlayers)
|
|
239
|
-
}
|
|
240
|
-
)
|
|
154
|
+
local features = {
|
|
155
|
+
[ISCFeature.CUSTOM_REVIVE] = __TS__New(CustomRevive, callbacks[ModCallbackCustom.PRE_CUSTOM_REVIVE], callbacks[ModCallbackCustom.POST_CUSTOM_REVIVE], runInNFrames),
|
|
156
|
+
[ISCFeature.ESAU_JR_DETECTION] = __TS__New(EsauJrDetection, callbacks[ModCallbackCustom.POST_ESAU_JR], callbacks[ModCallbackCustom.POST_FIRST_ESAU_JR]),
|
|
157
|
+
[ISCFeature.FLIP_DETECTION] = __TS__New(FlipDetection, callbacks[ModCallbackCustom.POST_FLIP], callbacks[ModCallbackCustom.POST_FIRST_FLIP]),
|
|
158
|
+
[ISCFeature.GRID_ENTITY_COLLISION_DETECTION] = __TS__New(GridEntityCollisionDetection, callbacks[ModCallbackCustom.POST_GRID_ENTITY_COLLISION], callbacks[ModCallbackCustom.POST_GRID_ENTITY_CUSTOM_COLLISION], customGridEntities),
|
|
159
|
+
[ISCFeature.GRID_ENTITY_UPDATE_DETECTION] = __TS__New(
|
|
160
|
+
GridEntityUpdateDetection,
|
|
161
|
+
callbacks[ModCallbackCustom.POST_GRID_ENTITY_INIT],
|
|
162
|
+
callbacks[ModCallbackCustom.POST_GRID_ENTITY_CUSTOM_INIT],
|
|
163
|
+
callbacks[ModCallbackCustom.POST_GRID_ENTITY_UPDATE],
|
|
164
|
+
callbacks[ModCallbackCustom.POST_GRID_ENTITY_CUSTOM_UPDATE],
|
|
165
|
+
callbacks[ModCallbackCustom.POST_GRID_ENTITY_REMOVE],
|
|
166
|
+
callbacks[ModCallbackCustom.POST_GRID_ENTITY_CUSTOM_REMOVE],
|
|
167
|
+
callbacks[ModCallbackCustom.POST_GRID_ENTITY_STATE_CHANGED],
|
|
168
|
+
callbacks[ModCallbackCustom.POST_GRID_ENTITY_CUSTOM_STATE_CHANGED],
|
|
169
|
+
callbacks[ModCallbackCustom.POST_GRID_ENTITY_BROKEN],
|
|
170
|
+
callbacks[ModCallbackCustom.POST_GRID_ENTITY_CUSTOM_BROKEN],
|
|
171
|
+
customGridEntities
|
|
172
|
+
),
|
|
173
|
+
[ISCFeature.GRID_ENTITY_RENDER_DETECTION] = __TS__New(GridEntityRenderDetection, callbacks[ModCallbackCustom.POST_GRID_ENTITY_RENDER], callbacks[ModCallbackCustom.POST_GRID_ENTITY_CUSTOM_RENDER], customGridEntities),
|
|
174
|
+
[ISCFeature.GAME_REORDERED_CALLBACKS] = gameReorderedCallbacks,
|
|
175
|
+
[ISCFeature.ITEM_PICKUP_DETECTION] = __TS__New(ItemPickupDetection, callbacks[ModCallbackCustom.POST_ITEM_PICKUP], callbacks[ModCallbackCustom.PRE_ITEM_PICKUP]),
|
|
176
|
+
[ISCFeature.PLAYER_COLLECTIBLE_DETECTION] = __TS__New(
|
|
177
|
+
PlayerCollectibleDetection,
|
|
178
|
+
callbacks[ModCallbackCustom.POST_PLAYER_COLLECTIBLE_ADDED],
|
|
179
|
+
callbacks[ModCallbackCustom.POST_PLAYER_COLLECTIBLE_REMOVED],
|
|
180
|
+
moddedElementSets,
|
|
181
|
+
runInNFrames
|
|
182
|
+
),
|
|
183
|
+
[ISCFeature.PLAYER_REORDERED_CALLBACKS] = __TS__New(PlayerReorderedCallbacks, callbacks[ModCallbackCustom.POST_PEFFECT_UPDATE_REORDERED], callbacks[ModCallbackCustom.POST_PLAYER_RENDER_REORDERED], callbacks[ModCallbackCustom.POST_PLAYER_UPDATE_REORDERED]),
|
|
184
|
+
[ISCFeature.SLOT_RENDER_DETECTION] = __TS__New(SlotRenderDetection, callbacks[ModCallbackCustom.POST_SLOT_RENDER], callbacks[ModCallbackCustom.POST_SLOT_ANIMATION_CHANGED]),
|
|
185
|
+
[ISCFeature.SLOT_UPDATE_DETECTION] = __TS__New(SlotUpdateDetection, callbacks[ModCallbackCustom.POST_SLOT_INIT], callbacks[ModCallbackCustom.POST_SLOT_UPDATE]),
|
|
186
|
+
[ISCFeature.CHARACTER_HEALTH_CONVERSION] = __TS__New(CharacterHealthConversion),
|
|
187
|
+
[ISCFeature.CHARACTER_STATS] = __TS__New(CharacterStats),
|
|
188
|
+
[ISCFeature.COLLECTIBLE_ITEM_POOL_TYPE] = __TS__New(CollectibleItemPoolType, pickupIndexCreation),
|
|
189
|
+
[ISCFeature.CUSTOM_GRID_ENTITIES] = customGridEntities,
|
|
190
|
+
[ISCFeature.CUSTOM_ITEM_POOLS] = __TS__New(CustomItemPools),
|
|
191
|
+
[ISCFeature.CUSTOM_HOTKEYS] = __TS__New(CustomHotkeys),
|
|
192
|
+
[ISCFeature.CUSTOM_PICKUPS] = __TS__New(CustomPickups),
|
|
193
|
+
[ISCFeature.CUSTOM_STAGES] = __TS__New(
|
|
194
|
+
CustomStages,
|
|
195
|
+
customGridEntities,
|
|
196
|
+
customTrapdoors,
|
|
197
|
+
disableAllSound,
|
|
198
|
+
gameReorderedCallbacks,
|
|
199
|
+
pause,
|
|
200
|
+
runInNFrames
|
|
201
|
+
),
|
|
202
|
+
[ISCFeature.CUSTOM_TRAPDOORS] = customTrapdoors,
|
|
203
|
+
[ISCFeature.DEBUG_DISPLAY] = __TS__New(DebugDisplay, mod),
|
|
204
|
+
[ISCFeature.DEPLOY_JSON_ROOM] = __TS__New(DeployJSONRoom, preventGridEntityRespawn, spawnCollectible),
|
|
205
|
+
[ISCFeature.DISABLE_ALL_SOUND] = disableAllSound,
|
|
206
|
+
[ISCFeature.DISABLE_INPUTS] = disableInputs,
|
|
207
|
+
[ISCFeature.FADE_IN_REMOVER] = __TS__New(FadeInRemover),
|
|
208
|
+
[ISCFeature.FAST_RESET] = __TS__New(FastReset),
|
|
209
|
+
[ISCFeature.FLYING_DETECTION] = __TS__New(FlyingDetection, moddedElementSets),
|
|
210
|
+
[ISCFeature.FORGOTTEN_SWITCH] = __TS__New(ForgottenSwitch, pressInput),
|
|
211
|
+
[ISCFeature.EXTRA_CONSOLE_COMMANDS] = __TS__New(ExtraConsoleCommands),
|
|
212
|
+
[ISCFeature.ITEM_POOL_DETECTION] = itemPoolDetection,
|
|
213
|
+
[ISCFeature.MODDED_ELEMENT_DETECTION] = moddedElementDetection,
|
|
214
|
+
[ISCFeature.MODDED_ELEMENT_SETS] = moddedElementSets,
|
|
215
|
+
[ISCFeature.NO_SIREN_STEAL] = __TS__New(NoSirenSteal),
|
|
216
|
+
[ISCFeature.PAUSE] = pause,
|
|
217
|
+
[ISCFeature.PERSISTENT_ENTITIES] = __TS__New(PersistentEntities, roomHistory),
|
|
218
|
+
[ISCFeature.PICKUP_INDEX_CREATION] = pickupIndexCreation,
|
|
219
|
+
[ISCFeature.PLAYER_INVENTORY] = __TS__New(PlayerInventory),
|
|
220
|
+
[ISCFeature.PONY_DETECTION] = ponyDetection,
|
|
221
|
+
[ISCFeature.PRESS_INPUT] = pressInput,
|
|
222
|
+
[ISCFeature.PREVENT_CHILD_ENTITIES] = __TS__New(PreventChildEntities),
|
|
223
|
+
[ISCFeature.PREVENT_COLLECTIBLE_ROTATION] = preventCollectibleRotation,
|
|
224
|
+
[ISCFeature.PREVENT_GRID_ENTITY_RESPAWN] = preventGridEntityRespawn,
|
|
225
|
+
[ISCFeature.ROOM_CLEAR_FRAME] = roomClearFrame,
|
|
226
|
+
[ISCFeature.ROOM_HISTORY] = roomHistory,
|
|
227
|
+
[ISCFeature.RUN_IN_N_FRAMES] = runInNFrames,
|
|
228
|
+
[ISCFeature.RUN_NEXT_ROOM] = runNextRoom,
|
|
229
|
+
[ISCFeature.SAVE_DATA_MANAGER] = saveDataManager,
|
|
230
|
+
[ISCFeature.SPAWN_ALT_ROCK_REWARDS] = __TS__New(SpawnRockAltRewards, itemPoolDetection),
|
|
231
|
+
[ISCFeature.SPAWN_COLLECTIBLE] = spawnCollectible,
|
|
232
|
+
[ISCFeature.STAGE_HISTORY] = stageHistory,
|
|
233
|
+
[ISCFeature.START_AMBUSH] = __TS__New(StartAmbush, runInNFrames),
|
|
234
|
+
[ISCFeature.TAINTED_LAZARUS_PLAYERS] = __TS__New(TaintedLazarusPlayers)
|
|
235
|
+
}
|
|
236
|
+
return features
|
|
241
237
|
end
|
|
242
238
|
return ____exports
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ActiveSlot, CollectibleType, ControllerIndex, PlayerType, TrinketType } from "isaac-typescript-definitions";
|
|
1
|
+
import { ActiveSlot, CollectibleType, ControllerIndex, PlayerForm, PlayerType, TrinketType } from "isaac-typescript-definitions";
|
|
2
2
|
export declare function addCollectibleCostume(player: EntityPlayer, collectibleType: CollectibleType): void;
|
|
3
3
|
export declare function addTrinketCostume(player: EntityPlayer, trinketType: TrinketType): void;
|
|
4
4
|
export declare function anyPlayerHasCollectible(collectibleType: CollectibleType): boolean;
|
|
@@ -230,6 +230,13 @@ export declare function playerAddCollectible(player: EntityPlayer, ...collectibl
|
|
|
230
230
|
* check for. Returns true if the player has any of the supplied collectible types.
|
|
231
231
|
*/
|
|
232
232
|
export declare function playerHasCollectible(player: EntityPlayer, ...collectibleTypes: CollectibleType[]): boolean;
|
|
233
|
+
/**
|
|
234
|
+
* Helper function to check to see if a player has one or more transformations.
|
|
235
|
+
*
|
|
236
|
+
* This function is variadic, meaning that you can supply as many transformations as you want to
|
|
237
|
+
* check for. Returns true if the player has any of the supplied transformations.
|
|
238
|
+
*/
|
|
239
|
+
export declare function playerHasForm(player: EntityPlayer, ...playerForms: PlayerForm[]): boolean;
|
|
233
240
|
/**
|
|
234
241
|
* Helper function to remove all of the active items from a player. This includes the Schoolbag item
|
|
235
242
|
* and any pocket actives.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"players.d.ts","sourceRoot":"","sources":["../../../src/functions/players.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EAEV,eAAe,EACf,eAAe,
|
|
1
|
+
{"version":3,"file":"players.d.ts","sourceRoot":"","sources":["../../../src/functions/players.ts"],"names":[],"mappings":"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"}
|
|
@@ -504,6 +504,17 @@ function ____exports.playerHasCollectible(self, player, ...)
|
|
|
504
504
|
function(____, collectibleType) return player:HasCollectible(collectibleType) end
|
|
505
505
|
)
|
|
506
506
|
end
|
|
507
|
+
--- Helper function to check to see if a player has one or more transformations.
|
|
508
|
+
--
|
|
509
|
+
-- This function is variadic, meaning that you can supply as many transformations as you want to
|
|
510
|
+
-- check for. Returns true if the player has any of the supplied transformations.
|
|
511
|
+
function ____exports.playerHasForm(self, player, ...)
|
|
512
|
+
local playerForms = {...}
|
|
513
|
+
return __TS__ArraySome(
|
|
514
|
+
playerForms,
|
|
515
|
+
function(____, playerForm) return player:HasPlayerForm(playerForm) end
|
|
516
|
+
)
|
|
517
|
+
end
|
|
507
518
|
--- Helper function to remove all of the active items from a player. This includes the Schoolbag item
|
|
508
519
|
-- and any pocket actives.
|
|
509
520
|
function ____exports.removeAllActiveItems(self, player)
|
|
@@ -511,7 +522,7 @@ function ____exports.removeAllActiveItems(self, player)
|
|
|
511
522
|
do
|
|
512
523
|
local collectibleType = player:GetActiveItem(activeSlot)
|
|
513
524
|
if collectibleType == CollectibleType.NULL then
|
|
514
|
-
goto
|
|
525
|
+
goto __continue93
|
|
515
526
|
end
|
|
516
527
|
local hasCollectible
|
|
517
528
|
repeat
|
|
@@ -521,7 +532,7 @@ function ____exports.removeAllActiveItems(self, player)
|
|
|
521
532
|
end
|
|
522
533
|
until not hasCollectible
|
|
523
534
|
end
|
|
524
|
-
::
|
|
535
|
+
::__continue93::
|
|
525
536
|
end
|
|
526
537
|
end
|
|
527
538
|
--- Helper function to remove all of the held trinkets from a player.
|
|
@@ -533,7 +544,7 @@ function ____exports.removeAllPlayerTrinkets(self, player)
|
|
|
533
544
|
do
|
|
534
545
|
local trinketType = player:GetTrinket(trinketSlot)
|
|
535
546
|
if trinketType == TrinketType.NULL then
|
|
536
|
-
goto
|
|
547
|
+
goto __continue98
|
|
537
548
|
end
|
|
538
549
|
local hasTrinket
|
|
539
550
|
repeat
|
|
@@ -543,7 +554,7 @@ function ____exports.removeAllPlayerTrinkets(self, player)
|
|
|
543
554
|
end
|
|
544
555
|
until not hasTrinket
|
|
545
556
|
end
|
|
546
|
-
::
|
|
557
|
+
::__continue98::
|
|
547
558
|
end
|
|
548
559
|
end
|
|
549
560
|
--- Helper function to remove a collectible costume from a player. Use this helper function to avoid
|
|
@@ -624,9 +635,9 @@ function ____exports.setActiveItem(self, player, collectibleType, activeSlot, ch
|
|
|
624
635
|
itemPool:RemoveCollectible(collectibleType)
|
|
625
636
|
end
|
|
626
637
|
repeat
|
|
627
|
-
local
|
|
628
|
-
local
|
|
629
|
-
if
|
|
638
|
+
local ____switch117 = activeSlot
|
|
639
|
+
local ____cond117 = ____switch117 == ActiveSlot.PRIMARY
|
|
640
|
+
if ____cond117 then
|
|
630
641
|
do
|
|
631
642
|
if primaryCollectibleType ~= CollectibleType.NULL then
|
|
632
643
|
player:RemoveCollectible(primaryCollectibleType)
|
|
@@ -635,8 +646,8 @@ function ____exports.setActiveItem(self, player, collectibleType, activeSlot, ch
|
|
|
635
646
|
break
|
|
636
647
|
end
|
|
637
648
|
end
|
|
638
|
-
|
|
639
|
-
if
|
|
649
|
+
____cond117 = ____cond117 or ____switch117 == ActiveSlot.SECONDARY
|
|
650
|
+
if ____cond117 then
|
|
640
651
|
do
|
|
641
652
|
if primaryCollectibleType ~= CollectibleType.NULL then
|
|
642
653
|
player:RemoveCollectible(primaryCollectibleType)
|
|
@@ -651,16 +662,16 @@ function ____exports.setActiveItem(self, player, collectibleType, activeSlot, ch
|
|
|
651
662
|
break
|
|
652
663
|
end
|
|
653
664
|
end
|
|
654
|
-
|
|
655
|
-
if
|
|
665
|
+
____cond117 = ____cond117 or ____switch117 == ActiveSlot.POCKET
|
|
666
|
+
if ____cond117 then
|
|
656
667
|
do
|
|
657
668
|
player:SetPocketActiveItem(collectibleType, activeSlot, keepInPools)
|
|
658
669
|
player:SetActiveCharge(charge, activeSlot)
|
|
659
670
|
break
|
|
660
671
|
end
|
|
661
672
|
end
|
|
662
|
-
|
|
663
|
-
if
|
|
673
|
+
____cond117 = ____cond117 or ____switch117 == ActiveSlot.POCKET_SINGLE_USE
|
|
674
|
+
if ____cond117 then
|
|
664
675
|
do
|
|
665
676
|
player:SetPocketActiveItem(collectibleType, activeSlot, keepInPools)
|
|
666
677
|
break
|
|
@@ -69,15 +69,6 @@ export declare function isReflectionRender(): boolean;
|
|
|
69
69
|
* because the `EXECUTE_CMD` callback will not fire for any vanilla commands.
|
|
70
70
|
*/
|
|
71
71
|
export declare function isVanillaConsoleCommand(commandName: string): boolean;
|
|
72
|
-
/**
|
|
73
|
-
* Helper function for creating objects that represent a mapping of an enum value to some other
|
|
74
|
-
* value in a type-safe way.
|
|
75
|
-
*
|
|
76
|
-
* This function will ensure that the provided object has a key for each value in the enum.
|
|
77
|
-
*
|
|
78
|
-
* After the `satisfies` operator is released in TypeScript 4.9, this function should be deleted.
|
|
79
|
-
*/
|
|
80
|
-
export declare function newObjectWithEnumKeys<Enum extends number | string, T extends Record<Enum, unknown>>(theEnum: Record<string, Enum>, obj: T): T;
|
|
81
72
|
/**
|
|
82
73
|
* Helper function to print something to the in-game console. Use this instead of invoking the
|
|
83
74
|
* `Isaac.ConsoleOutput` method directly because it will automatically insert a newline at the end
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/functions/utils.ts"],"names":[],"mappings":";AAIA;;;;;;;;;;;GAWG;AACH,wBAAgB,MAAM,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,GAAG,EAAE,SAAS,SAAI,GAAG,GAAG,EAAE,CAYlE;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CACrC,GAAG,EAAE,OAAO,EACZ,oBAAoB,EAAE,MAAM,GAC3B,MAAM,CAQR;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,MAAM,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,GAAG,EAAE,SAAS,SAAI,GAAG,GAAG,EAAE,CAYlE;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,GAAG,OAAO,CAEhE;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,GAAG,OAAO,CAEhE;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,IAAI,OAAO,CAI5C;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAEpE;AAED
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/functions/utils.ts"],"names":[],"mappings":";AAIA;;;;;;;;;;;GAWG;AACH,wBAAgB,MAAM,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,GAAG,EAAE,SAAS,SAAI,GAAG,GAAG,EAAE,CAYlE;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CACrC,GAAG,EAAE,OAAO,EACZ,oBAAoB,EAAE,MAAM,GAC3B,MAAM,CAQR;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,MAAM,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,GAAG,EAAE,SAAS,SAAI,GAAG,GAAG,EAAE,CAYlE;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,GAAG,OAAO,CAEhE;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,GAAG,OAAO,CAEhE;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,IAAI,OAAO,CAI5C;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAEpE;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAE9C;AAED,iGAAiG;AACjG,wBAAgB,YAAY,CAAC,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI,CAGxE;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,MAAM,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,IAAI,GAAG,IAAI,CAI3D;AAED;;;;;;;;;;;;GAYG;AAEH,wBAAgB,IAAI,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAG;AAEjD;;;;;;;;;;;;GAYG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAqB1E;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,4BAA4B,CAE1C,CAAC,SAAS,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,EAC/B,IAAI,SAAS,MAAM,GAAG,MAAM,KACzB,IAAI,CAAG"}
|
|
@@ -111,15 +111,6 @@ end
|
|
|
111
111
|
function ____exports.isVanillaConsoleCommand(self, commandName)
|
|
112
112
|
return CONSOLE_COMMANDS_SET:has(commandName)
|
|
113
113
|
end
|
|
114
|
-
--- Helper function for creating objects that represent a mapping of an enum value to some other
|
|
115
|
-
-- value in a type-safe way.
|
|
116
|
-
--
|
|
117
|
-
-- This function will ensure that the provided object has a key for each value in the enum.
|
|
118
|
-
--
|
|
119
|
-
-- After the `satisfies` operator is released in TypeScript 4.9, this function should be deleted.
|
|
120
|
-
function ____exports.newObjectWithEnumKeys(self, theEnum, obj)
|
|
121
|
-
return obj
|
|
122
|
-
end
|
|
123
114
|
--- Helper function to print something to the in-game console. Use this instead of invoking the
|
|
124
115
|
-- `Isaac.ConsoleOutput` method directly because it will automatically insert a newline at the end
|
|
125
116
|
-- of the message (which `Isaac.ConsoleOutput` does not do by default).
|
package/package.json
CHANGED
package/src/callbacks.ts
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import * as cc from "./callbackClasses";
|
|
2
2
|
import { ModCallbackCustom } from "./enums/ModCallbackCustom";
|
|
3
3
|
import { getEnumValues } from "./functions/enums";
|
|
4
|
-
import {
|
|
4
|
+
import { AnyClass } from "./types/AnyClass";
|
|
5
|
+
import { HasAllEnumKeys } from "./types/HasAllEnumKeys";
|
|
5
6
|
|
|
6
|
-
const MOD_CALLBACK_CUSTOM_TO_CLASS =
|
|
7
|
+
const MOD_CALLBACK_CUSTOM_TO_CLASS = {
|
|
7
8
|
[ModCallbackCustom.ENTITY_TAKE_DMG_FILTER]: cc.EntityTakeDmgFilter,
|
|
8
9
|
[ModCallbackCustom.POST_AMBUSH_FINISHED]: cc.PostAmbushFinished,
|
|
9
10
|
[ModCallbackCustom.POST_AMBUSH_STARTED]: cc.PostAmbushStarted,
|
|
@@ -117,11 +118,11 @@ const MOD_CALLBACK_CUSTOM_TO_CLASS = newObjectWithEnumKeys(ModCallbackCustom, {
|
|
|
117
118
|
[ModCallbackCustom.PRE_NEW_LEVEL]: cc.PreNewLevel,
|
|
118
119
|
[ModCallbackCustom.PRE_NPC_COLLISION_FILTER]: cc.PreNPCCollisionFilter,
|
|
119
120
|
[ModCallbackCustom.PRE_NPC_UPDATE_FILTER]: cc.PreNPCUpdateFilter,
|
|
120
|
-
} as const
|
|
121
|
+
} as const satisfies HasAllEnumKeys<ModCallbackCustom, AnyClass>;
|
|
121
122
|
|
|
122
123
|
export type ModCallbackCustomToClass = {
|
|
123
124
|
readonly [Key in keyof typeof MOD_CALLBACK_CUSTOM_TO_CLASS]: InstanceType<
|
|
124
|
-
typeof MOD_CALLBACK_CUSTOM_TO_CLASS[Key]
|
|
125
|
+
(typeof MOD_CALLBACK_CUSTOM_TO_CLASS)[Key]
|
|
125
126
|
>;
|
|
126
127
|
};
|
|
127
128
|
|
package/src/features.ts
CHANGED
|
@@ -52,13 +52,12 @@ import { SpawnRockAltRewards } from "./classes/features/other/SpawnRockAltReward
|
|
|
52
52
|
import { StageHistory } from "./classes/features/other/StageHistory";
|
|
53
53
|
import { StartAmbush } from "./classes/features/other/StartAmbush";
|
|
54
54
|
import { TaintedLazarusPlayers } from "./classes/features/other/TaintedLazarusPlayers";
|
|
55
|
+
import { Feature } from "./classes/private/Feature";
|
|
55
56
|
import { ISCFeature } from "./enums/ISCFeature";
|
|
56
57
|
import { ModCallbackCustom } from "./enums/ModCallbackCustom";
|
|
57
|
-
import {
|
|
58
|
-
newObjectWithEnumKeys,
|
|
59
|
-
validateInterfaceMatchesEnum,
|
|
60
|
-
} from "./functions/utils";
|
|
58
|
+
import { validateInterfaceMatchesEnum } from "./functions/utils";
|
|
61
59
|
import { ModUpgradedInterface } from "./interfaces/private/ModUpgradedInterface";
|
|
60
|
+
import { HasAllEnumKeys } from "./types/HasAllEnumKeys";
|
|
62
61
|
|
|
63
62
|
export interface ISCFeatureToClass {
|
|
64
63
|
// Callback logic
|
|
@@ -168,7 +167,7 @@ export function getFeatures(
|
|
|
168
167
|
stageHistory,
|
|
169
168
|
);
|
|
170
169
|
|
|
171
|
-
|
|
170
|
+
const features = {
|
|
172
171
|
// Callback logic
|
|
173
172
|
[ISCFeature.CUSTOM_REVIVE]: new CustomRevive(
|
|
174
173
|
callbacks[ModCallbackCustom.PRE_CUSTOM_REVIVE],
|
|
@@ -288,5 +287,7 @@ export function getFeatures(
|
|
|
288
287
|
[ISCFeature.STAGE_HISTORY]: stageHistory,
|
|
289
288
|
[ISCFeature.START_AMBUSH]: new StartAmbush(runInNFrames),
|
|
290
289
|
[ISCFeature.TAINTED_LAZARUS_PLAYERS]: new TaintedLazarusPlayers(),
|
|
291
|
-
} as const
|
|
290
|
+
} as const satisfies HasAllEnumKeys<ISCFeature, Feature>;
|
|
291
|
+
|
|
292
|
+
return features;
|
|
292
293
|
}
|
package/src/functions/players.ts
CHANGED
|
@@ -642,6 +642,19 @@ export function playerHasCollectible(
|
|
|
642
642
|
);
|
|
643
643
|
}
|
|
644
644
|
|
|
645
|
+
/**
|
|
646
|
+
* Helper function to check to see if a player has one or more transformations.
|
|
647
|
+
*
|
|
648
|
+
* This function is variadic, meaning that you can supply as many transformations as you want to
|
|
649
|
+
* check for. Returns true if the player has any of the supplied transformations.
|
|
650
|
+
*/
|
|
651
|
+
export function playerHasForm(
|
|
652
|
+
player: EntityPlayer,
|
|
653
|
+
...playerForms: PlayerForm[]
|
|
654
|
+
): boolean {
|
|
655
|
+
return playerForms.some((playerForm) => player.HasPlayerForm(playerForm));
|
|
656
|
+
}
|
|
657
|
+
|
|
645
658
|
/**
|
|
646
659
|
* Helper function to remove all of the active items from a player. This includes the Schoolbag item
|
|
647
660
|
* and any pocket actives.
|
package/src/functions/utils.ts
CHANGED
|
@@ -124,22 +124,6 @@ export function isVanillaConsoleCommand(commandName: string): boolean {
|
|
|
124
124
|
return CONSOLE_COMMANDS_SET.has(commandName);
|
|
125
125
|
}
|
|
126
126
|
|
|
127
|
-
/**
|
|
128
|
-
* Helper function for creating objects that represent a mapping of an enum value to some other
|
|
129
|
-
* value in a type-safe way.
|
|
130
|
-
*
|
|
131
|
-
* This function will ensure that the provided object has a key for each value in the enum.
|
|
132
|
-
*
|
|
133
|
-
* After the `satisfies` operator is released in TypeScript 4.9, this function should be deleted.
|
|
134
|
-
*/
|
|
135
|
-
export function newObjectWithEnumKeys<
|
|
136
|
-
Enum extends number | string,
|
|
137
|
-
T extends Record<Enum, unknown>,
|
|
138
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
139
|
-
>(theEnum: Record<string, Enum>, obj: T): T {
|
|
140
|
-
return obj;
|
|
141
|
-
}
|
|
142
|
-
|
|
143
127
|
/**
|
|
144
128
|
* Helper function to print something to the in-game console. Use this instead of invoking the
|
|
145
129
|
* `Isaac.ConsoleOutput` method directly because it will automatically insert a newline at the end
|