// Stages

AStages.customizeStage('Magic')
    .setAddTitle('Whoa, buddy. I think you can use magic now.') // Default
    .setAddSubTitle('you a wizard') // Example
    .setRemoveTitle('Dam, you lost it.') // Example
    .setRemoveSubTitle('with remove subtitle') // Example
    .setAddChatMessage('Custom chat message for add operation') // Example
    .setRemoveChatMessage('Custom chat message for remove operation') // Example
    .setFadeIn(20) // Default
    .setFadeOut(20) // Default
    .setStay(60) // Default

AStages.customizeStage('Nether')
    .setAddTitle('To HELL you go') // Default
    .setAddSubTitle('with add subtitle') // Example
    .setRemoveTitle('Dam, you lost it.') // Example
    .setRemoveSubTitle('with remove subtitle') // Example
    .setAddChatMessage('Custom chat message for add operation') // Example
    .setRemoveChatMessage('Custom chat message for remove operation') // Example
    .setFadeIn(20) // Default
    .setFadeOut(20) // Default
    .setStay(60) // Default

AStages.customizeStage('End')
    .setAddTitle('End time?') // Default
    .setAddSubTitle('with add subtitle') // Example
    .setRemoveTitle('Dam, you lost it.') // Example
    .setRemoveSubTitle('with remove subtitle') // Example
    .setAddChatMessage('Custom chat message for add operation') // Example
    .setRemoveChatMessage('Custom chat message for remove operation') // Example
    .setFadeIn(20) // Default
    .setFadeOut(20) // Default
    .setStay(60) // Default

AStages.customizeStage('Twilight')
    .setAddTitle('The Twilight Zone') // Default
    .setAddSubTitle('with add subtitle') // Example
    .setRemoveTitle('Dam, you lost it.') // Example
    .setRemoveSubTitle('with remove subtitle') // Example
    .setAddChatMessage('Custom chat message for add operation') // Example
    .setRemoveChatMessage('Custom chat message for remove operation') // Example
    .setFadeIn(20) // Default
    .setFadeOut(20) // Default
    .setStay(60) // Default

AStages.customizeStage('Draconic')
    .setAddTitle('Stage unlocked!') // Default
    .setAddSubTitle('with add subtitle') // Example
    .setRemoveTitle('Stage removed!') // Example
    .setRemoveSubTitle('with remove subtitle') // Example
    .setAddChatMessage('Custom chat message for add operation') // Example
    .setRemoveChatMessage('Custom chat message for remove operation') // Example
    .setFadeIn(20) // Default
    .setFadeOut(20) // Default
    .setStay(60) // Default

AStages.customizeStage('Fire')
    .setAddTitle('You can hatch Fire dragons now!') // Default
    .setAddSubTitle('with add subtitle') // Example
    .setFadeIn(20) // Default
    .setFadeOut(20) // Default
    .setStay(60) // Default

AStages.customizeStage('Ice')
    .setAddTitle('You can hatch Ice dragons now!') // Default
    .setFadeIn(20) // Default
    .setFadeOut(20) // Default
    .setStay(60) // Default

AStages.customizeStage('Lightning')
    .setAddTitle('You can hatch Lightning dragons now!') // Default
    .setAddSubTitle('with add subtitle') // Example
    .setRemoveTitle('Stage removed!') // Example
    .setRemoveSubTitle('with remove subtitle') // Example
    .setAddChatMessage('Custom chat message for add operation') // Example
    .setRemoveChatMessage('Custom chat message for remove operation') // Example
    .setFadeIn(20) // Default
    .setFadeOut(20) // Default
    .setStay(60) // Default

AStages.customizeStage('FireSteel')

AStages.customizeStage('IceSteel')

AStages.customizeStage('LightningSteel')

AStages.customizeStage('DreadSteel')

AStages.customizeStage('IronColossus')
    .setAddTitle('You have unlocked Iron Equipment!')

AStages.customizeStage('GoblinLord')
    .setAddTitle('You have unlocked Gold Equipment!')

AStages.customizeStage('Arion')
    .setAddTitle('You have unlocked Emerald Equipment!')

AStages.customizeStage('Eldorath')
    .setAddTitle('You have unlocked Diamond Equipment!')

AStages.customizeStage('Zoranth')
    .setAddTitle('You have unlocked Netherite Equipment!')

AStages.customizeStage('ElvenitePaladin')
    .setAddTitle('You have unlocked Elvenite Equipment!')

AStages.customizeStage('Vaedric')
    .setAddTitle('You have unlocked Voiderite Equipment!')

AStages.customizeStage('Calamities')
    .setAddTitle('You have unlocked Bloody Equipment!')

AStages.customizeStage('Zenith')
    .setAddTitle('You have unlocked Helionite Equipment!')

AStages.customizeStage('CorruptedEye')
AStages.customizeStage('UndeadEye')
AStages.customizeStage('RogueEye')
AStages.customizeStage('WitchEye')
AStages.customizeStage('MagicalEye')
AStages.customizeStage('WitherEye')
AStages.customizeStage('CrypticEye')
AStages.customizeStage('BlackEye')
AStages.customizeStage('OldEye')
AStages.customizeStage('ExoticEye')
AStages.customizeStage('CursedEye')
AStages.customizeStage('EvilEye')
AStages.customizeStage('LostEye')
AStages.customizeStage('ColdEye')
AStages.customizeStage('NetherEye')
AStages.customizeStage('GuardianEye')


// Dimension lock

AStages.addRestrictionForDimension("astages/dimension", "Nether", "minecraft:the_nether")
AStages.addRestrictionForDimension("astages/dimension2", "End", "minecraft:end")
AStages.addRestrictionForDimension("astages/dimension3", "Twilight", "twilightforest:twilight_forest")

// Mod lock

AStages.addRestrictionForMod("astages/mod1", "Magic", "botania")
    .ignoreTags("botania:mystical_flowers", "botania:double_mystical_flowers", "botania:petals") // Blacklist for tags
    .setCanBeStoredInInventory(true)
    .setCanBeStoredInContainers(true)
    .setCanPickedUp(true)
    .setHideInJEI(false)

AStages.addRestrictionForMod("astages/mod2", "Nether", "doom")
    .setCanBeStoredInInventory(true)
    .setCanBeStoredInContainers(true)
    .setCanPickedUp(true)
    .setHideInJEI(false)

AStages.addRestrictionForMod("astages/mod3", "Nether", "draconicevolution")
    .setCanBeStoredInInventory(true)
    .setCanBeStoredInContainers(true)
    .setCanPickedUp(true)
    .setHideInJEI(false)

AStages.addRestrictionForMod("astages/mod4", "DreadSteel", "dreadsteel")
    .ignoreTags("dreadsteel:kit_default") // Blacklist for tags
    .setCanBeStoredInInventory(true)
    .setCanBeStoredInContainers(true)
    .setCanPickedUp(true)
    .setHideInJEI(false)


// Tag Lock

AStages.addRestrictionForTag("astages/tag1", "FireSteel", "kubejs:fire_dragonsteel")
    .setCanBeStoredInInventory(true)
    .setCanBeStoredInContainers(true)
    .setCanPickedUp(true)
    .setHideInJEI(false)

AStages.addRestrictionForTag("astages/tag2", "IceSteel", "kubejs:ice_dragonsteel")
    .setCanBeStoredInInventory(true)
    .setCanBeStoredInContainers(true)
    .setCanPickedUp(true)
    .setHideInJEI(false)

AStages.addRestrictionForTag("astages/tag3", "LightningSteel", "kubejs:lightning_dragonsteel")
    .setCanBeStoredInInventory(true)
    .setCanBeStoredInContainers(true)
    .setCanPickedUp(true)
    .setHideInJEI(false)


// Armagedon stages

AStages.addRestrictionForTag("astages/tag4", "IronColossus", "forge:iron_tools")
    .setCanBeStoredInInventory(true)
    .setCanBeStoredInContainers(true)
    .setCanPickedUp(true)
    .setHideInJEI(false)
    

AStages.addRestrictionForTag("astages/tag5", "IronColossus", "forge:iron_armor")
    .setCanBeStoredInInventory(true)
    .setCanBeStoredInContainers(true)
    .setCanPickedUp(true)
    .setHideInJEI(false)

AStages.addRestrictionForTag("astages/tag6", "GoblinLord", "forge:golden_tools")
    .setCanBeStoredInInventory(true)
    .setCanBeStoredInContainers(true)
    .setCanPickedUp(true)
    .setHideInJEI(false)

AStages.addRestrictionForTag("astages/tag7", "GoblinLord", "forge:golden_armor")
    .setCanBeStoredInInventory(true)
    .setCanBeStoredInContainers(true)
    .setCanPickedUp(true)
    .setHideInJEI(false)

AStages.addRestrictionForTag("astages/tag8", "Arion", "forge:emerald_tools")
    .setCanBeStoredInInventory(true)
    .setCanBeStoredInContainers(true)
    .setCanPickedUp(true)
    .setHideInJEI(false)

AStages.addRestrictionForTag("astages/tag9", "Arion", "forge:emerald_armor")
    .setCanBeStoredInInventory(true)
    .setCanBeStoredInContainers(true)
    .setCanPickedUp(true)
    .setHideInJEI(false)

AStages.addRestrictionForTag("astages/tag10", "Eldorath", "forge:diamond_tools")
    .setCanBeStoredInInventory(true)
    .setCanBeStoredInContainers(true)
    .setCanPickedUp(true)
    .setHideInJEI(false)

AStages.addRestrictionForTag("astages/tag11", "Eldorath", "forge:diamond_armor")
    .setCanBeStoredInInventory(true)
    .setCanBeStoredInContainers(true)
    .setCanPickedUp(true)
    .setHideInJEI(false)

AStages.addRestrictionForTag("astages/tag12", "Zoranth", "forge:netherite_tools")
    .setCanBeStoredInInventory(true)
    .setCanBeStoredInContainers(true)
    .setCanPickedUp(true)
    .setHideInJEI(false)

AStages.addRestrictionForTag("astages/tag13", "Zoranth", "forge:netherite_armor")
    .setCanBeStoredInInventory(true)
    .setCanBeStoredInContainers(true)
    .setCanPickedUp(true)
    .setHideInJEI(false)

AStages.addRestrictionForTag("astages/tag14", "ElvenitePaladin", "forge:elvenite_tools")
    .setCanBeStoredInInventory(true)
    .setCanBeStoredInContainers(true)
    .setCanPickedUp(true)
    .setHideInJEI(false)

AStages.addRestrictionForTag("astages/tag15", "ElvenitePaladin", "forge:elvenite_armor")
    .setCanBeStoredInInventory(true)
    .setCanBeStoredInContainers(true)
    .setCanPickedUp(true)
    .setHideInJEI(false)

AStages.addRestrictionForTag("astages/tag16", "Vaedric", "forge:voiderite_tools")
    .setCanBeStoredInInventory(true)
    .setCanBeStoredInContainers(true)
    .setCanPickedUp(true)
    .setHideInJEI(false)

AStages.addRestrictionForTag("astages/tag17", "Vaedric", "forge:voiderite_armor")
    .setCanBeStoredInInventory(true)
    .setCanBeStoredInContainers(true)
    .setCanPickedUp(true)
    .setHideInJEI(false)

AStages.addRestrictionForTag("astages/tag18", "Calamities", "forge:bloody_tools")
    .setCanBeStoredInInventory(true)
    .setCanBeStoredInContainers(true)
    .setCanPickedUp(true)
    .setHideInJEI(false)

AStages.addRestrictionForTag("astages/tag19", "Calamities", "forge:bloody_armor")
    .setCanBeStoredInInventory(true)
    .setCanBeStoredInContainers(true)
    .setCanPickedUp(true)
    .setHideInJEI(false)

AStages.addRestrictionForTag("astages/tag19", "Zenith", "forge:helionite_tools")
    .setCanBeStoredInInventory(true)
    .setCanBeStoredInContainers(true)
    .setCanPickedUp(true)
    .setHideInJEI(false)

AStages.addRestrictionForTag("astages/tag19", "Zenith", "forge:helionite_armor")
    .setCanBeStoredInInventory(true)
    .setCanBeStoredInContainers(true)
    .setCanPickedUp(true)
    .setHideInJEI(false)

AStages.addRestrictionForTag("astages/tag20", "IronColossus", "simplyswords:iron_gear")
    .setCanBeStoredInInventory(true)
    .setCanBeStoredInContainers(true)
    .setCanPickedUp(true)
    .setHideInJEI(false)

AStages.addRestrictionForTag("astages/tag21", "GoblinLord", "simplyswords:gold_gear")
    .setCanBeStoredInInventory(true)
    .setCanBeStoredInContainers(true)
    .setCanPickedUp(true)
    .setHideInJEI(false)

AStages.addRestrictionForTag("astages/tag22", "Eldorath", "simplyswords:diamond_gear")
    .setCanBeStoredInInventory(true)
    .setCanBeStoredInContainers(true)
    .setCanPickedUp(true)
    .setHideInJEI(false)

AStages.addRestrictionForTag("astages/tag23", "Zoranth", "simplyswords:netherite_gear")
    .setCanBeStoredInInventory(true)
    .setCanBeStoredInContainers(true)
    .setCanPickedUp(true)
    .setHideInJEI(false)

AStages.addRestrictionForTag("astages/tag24", "ElvenitePaladin", "simplyswords:runic_gear")
    .setCanBeStoredInInventory(true)
    .setCanBeStoredInContainers(true)
    .setCanPickedUp(true)
    .setHideInJEI(false)


// Item Lock

AStages.addRestrictionForItem("astages/item1", "CorruptedEye", "endrem:corrupted_eye")
    .setCanBeStoredInInventory(true)
    .setCanBeStoredInContainers(true)
    .setCanPickedUp(true)
    .setHideInJEI(false)
    .setHideTooltip(false)

AStages.addRestrictionForItem("astages/item2", "UndeadEye", "endrem:undead_eye")
    .setCanBeStoredInInventory(true)
    .setCanBeStoredInContainers(true)
    .setCanPickedUp(true)
    .setHideInJEI(false)
    .setHideTooltip(false)

AStages.addRestrictionForItem("astages/item3", "RogueEye", "endrem:rogue_eye")
    .setCanBeStoredInInventory(true)
    .setCanBeStoredInContainers(true)
    .setCanPickedUp(true)
    .setHideInJEI(false)
    .setHideTooltip(false)

AStages.addRestrictionForItem("astages/item4", "WitchEye", "endrem:witch_eye")
    .setCanBeStoredInInventory(true)
    .setCanBeStoredInContainers(true)
    .setCanPickedUp(true)
    .setHideInJEI(false)
    .setHideTooltip(false)

AStages.addRestrictionForItem("astages/item5", "MagicalEye", "endrem:magical_eye")
    .setCanBeStoredInInventory(true)
    .setCanBeStoredInContainers(true)
    .setCanPickedUp(true)
    .setHideInJEI(false)
    .setHideTooltip(false)

AStages.addRestrictionForItem("astages/item6", "WitherEye", "endrem:wither_eye")
    .setCanBeStoredInInventory(true)
    .setCanBeStoredInContainers(true)
    .setCanPickedUp(true)
    .setHideInJEI(false)
    .setHideTooltip(false)

AStages.addRestrictionForItem("astages/item7", "CrypticEye", "endrem:cryptic_eye")
    .setCanBeStoredInInventory(true)
    .setCanBeStoredInContainers(true)
    .setCanPickedUp(true)
    .setHideInJEI(false)
    .setHideTooltip(false)

AStages.addRestrictionForItem("astages/item8", "BlackEye", "endrem:black_eye")
    .setCanBeStoredInInventory(true)
    .setCanBeStoredInContainers(true)
    .setCanPickedUp(true)
    .setHideInJEI(false)
    .setHideTooltip(false)

AStages.addRestrictionForItem("astages/item9", "OldEye", "endrem:old_eye")
    .setCanBeStoredInInventory(true)
    .setCanBeStoredInContainers(true)
    .setCanPickedUp(true)
    .setHideInJEI(false)
    .setHideTooltip(false)

AStages.addRestrictionForItem("astages/item10", "ExoticEye", "endrem:exotic_eye")
    .setCanBeStoredInInventory(true)
    .setCanBeStoredInContainers(true)
    .setCanPickedUp(true)
    .setHideInJEI(false)
    .setHideTooltip(false)

AStages.addRestrictionForItem("astages/item11", "CursedEye", "endrem:cursed_eye")
    .setCanBeStoredInInventory(true)
    .setCanBeStoredInContainers(true)
    .setCanPickedUp(true)
    .setHideInJEI(false)
    .setHideTooltip(false)

AStages.addRestrictionForItem("astages/item12", "EvilEye", "endrem:evil_eye")
    .setCanBeStoredInInventory(true)
    .setCanBeStoredInContainers(true)
    .setCanPickedUp(true)
    .setHideInJEI(false)
    .setHideTooltip(false)

AStages.addRestrictionForItem("astages/item13", "LostEye", "endrem:lost_eye")
    .setCanBeStoredInInventory(true)
    .setCanBeStoredInContainers(true)
    .setCanPickedUp(true)
    .setHideInJEI(false)
    .setHideTooltip(false)

AStages.addRestrictionForItem("astages/item14", "ColdEye", "endrem:cold_eye")
    .setCanBeStoredInInventory(true)
    .setCanBeStoredInContainers(true)
    .setCanPickedUp(true)
    .setHideInJEI(false)
    .setHideTooltip(false)

AStages.addRestrictionForItem("astages/item15", "NetherEye", "endrem:nether_eye")
    .setCanBeStoredInInventory(true)
    .setCanBeStoredInContainers(true)
    .setCanPickedUp(true)
    .setHideInJEI(false)
    .setHideTooltip(false)

AStages.addRestrictionForItem("astages/item16", "GuardianEye", "endrem:guardian_eye")
    .setCanBeStoredInInventory(true)
    .setCanBeStoredInContainers(true)
    .setCanPickedUp(true)
    .setHideInJEI(false)
    .setHideTooltip(false)