Пример #1
0
        private static void RegisterSpiritBosses(Mod spiritMod)
        {
            spiritMod.AddBoss(
                1.4f,
                "Scarabeus",
                () => MyWorld.downedScarabeus,
                new BCIDData(
                    new List <int> {
                ModContent.NPCType <Scarabeus>()
            },
                    new List <int> {
                ModContent.ItemType <ScarabIdol>()
            },
                    new List <int> {
                ModContent.ItemType <Trophy1>(),
                ModContent.ItemType <ScarabMask>(),
                ModContent.ItemType <ScarabBox>()
            },
                    new List <int> {
                ModContent.ItemType <ScarabPendant>(),
                ModContent.ItemType <Chitin>(),
                ModContent.ItemType <ScarabBow>(),
                ModContent.ItemType <LocustCrook>(),
                ModContent.ItemType <RoyalKhopesh>(),
                ModContent.ItemType <DesertSnowglobe>(),
                ItemID.LesserHealingPotion
            }),
                $"Use a [i:{ModContent.ItemType<ScarabIdol>()}] in the Desert during the daytime. A [i:{ModContent.ItemType<ScarabIdol>()}] can be found upon completing a certain Adventurer quest, or can be crafted, and is non-consumable.",
                "",
                "SpiritMod/Textures/BossChecklist/ScarabeusTexture",
                "SpiritMod/NPCs/Boss/Scarabeus/Scarabeus_Head_Boss",
                null);

            spiritMod.AddBoss(
                2.5f,
                "Moon Jelly Wizard",
                () => MyWorld.downedMoonWizard,
                new BCIDData(
                    new List <int> {
                ModContent.NPCType <MoonWizard>()
            },
                    new List <int> {
                ModContent.ItemType <DreamlightJellyItem>()
            },
                    new List <int> {
                ModContent.ItemType <MJWTrophy>(),
                ModContent.ItemType <MJWMask>(),
                ModContent.ItemType <MJWBox>()
            },
                    new List <int> {
                ModContent.ItemType <Cornucopion>(),
                ModContent.ItemType <MoonjellySummonStaff>(),
                ModContent.ItemType <Moonburst>(),
                ModContent.ItemType <JellynautBubble>(),
                ModContent.ItemType <Moonshot>(),
                ModContent.ItemType <MoonJelly>()
            }
                    ),
                $"Use a [i:{ModContent.ItemType<DreamlightJellyItem>()}] anywhere at nighttime. A [i:{ModContent.ItemType<DreamlightJellyItem>()}] can be caught with a bug net during the Jelly Deluge, and is non-consumable",
                "",
                "SpiritMod/Textures/BossChecklist/MoonWizardTexture",
                "SpiritMod/NPCs/Boss/MoonWizard/MoonWizard_Head_Boss",
                null);

            spiritMod.AddBoss(
                3.5f,
                "Vinewrath Bane",
                () => MyWorld.downedReachBoss,
                new BCIDData(
                    new List <int> {
                ModContent.NPCType <ReachBoss>()
            },
                    new List <int> {
                ModContent.ItemType <ReachBossSummon>()
            },
                    new List <int> {
                ModContent.ItemType <Trophy5>(),
                ModContent.ItemType <ReachMask>(),
                ModContent.ItemType <VinewrathBox>()
            },
                    new List <int> {
                ModContent.ItemType <DeathRose>(),
                ModContent.ItemType <SunbeamStaff>(),
                ModContent.ItemType <ThornBow>(),
                ModContent.ItemType <ReachVineStaff>(),
                ModContent.ItemType <ReachBossSword>(),
                // ModContent.ItemType<ReachKnife>(),
                ItemID.LesserHealingPotion
            }),
                $"Right-click the Bloodblossom, a glowing flower found at the bottom of the Briar. The Vinewrath Bane can be fought at any time and any place in progression. If a Bloodblossom is not present, use a [i:{ModContent.ItemType<ReachBossSummon>()}] in the Briar below the surface at any time.",
                "",
                "SpiritMod/Textures/BossChecklist/ReachBossTexture",
                "SpiritMod/NPCs/Boss/ReachBoss/ReachBoss/ReachBoss_Head_Boss",
                null
                );

            spiritMod.AddBoss(
                4.2f,
                "Ancient Avian",
                () => MyWorld.downedAncientFlier,
                new BCIDData(
                    new List <int> {
                ModContent.NPCType <AncientFlyer>()
            },
                    new List <int> {
                ModContent.ItemType <JewelCrown>()
            },
                    new List <int> {
                ModContent.ItemType <Trophy2>(), ModContent.ItemType <FlierMask>(),
                ModContent.ItemType <AvianBox>()
            },
                    new List <int> {
                ModContent.ItemType <AvianHook>(),
                ModContent.ItemType <TalonBlade>(),
                ModContent.ItemType <Talonginus>(),
                ModContent.ItemType <SoaringScapula>(),
                ModContent.ItemType <TalonPiercer>(),
                ModContent.ItemType <SkeletalonStaff>(),
                ModContent.ItemType <TalonHeaddress>(),
                ModContent.ItemType <TalonGarb>(),
                ItemID.LesserHealingPotion
            }),
                $"Use a[i:{ModContent.ItemType<JewelCrown>()}] in the sky biome at any time.Alternatively, smash a Giant Avian Egg, which is found on Avian Islands near the sky layer.The Ancient Avian can be fought at any time and any place in progression.",
                "",
                "SpiritMod/Textures/BossChecklist/AvianTexture",
                "SpiritMod/NPCs/Boss/AncientFlyer_Head_Boss",
                null
                );

            spiritMod.AddBoss(
                5.9f,
                "Starplate Voyager",
                () => MyWorld.downedRaider,
                new BCIDData(
                    new List <int> {
                ModContent.NPCType <SteamRaiderHead>()
            },
                    new List <int> {
                ModContent.ItemType <StarWormSummon>()
            },
                    new List <int> {
                ModContent.ItemType <Trophy3>(),
                ModContent.ItemType <StarplateMask>(),
                ModContent.ItemType <StarplateBox>()
            },
                    new List <int> {
                ModContent.ItemType <StarMap>(),
                ModContent.ItemType <CosmiliteShard>(),
                ItemID.LesserHealingPotion
            }),
                $"Use a [i:{ModContent.ItemType<StarWormSummon>()}] at an Astralite Beacon, located in the Asteroids, at nighttime.",
                "",
                "SpiritMod/Textures/BossChecklist/StarplateTexture",
                "SpiritMod/NPCs/Boss/SteamRaider/SteamRaiderHead_Head_Boss",
                null
                );

            spiritMod.AddBoss(
                6.8f,
                "Infernon",
                () => MyWorld.downedInfernon,
                new BCIDData(
                    new List <int> {
                ModContent.NPCType <Infernon>()
            },
                    new List <int> {
                ModContent.ItemType <CursedCloth>()
            },
                    new List <int> {
                ModContent.ItemType <Trophy4>(),
                ModContent.ItemType <InfernonMask>(),
                ModContent.ItemType <InfernonBox>()
            },
                    new List <int> {
                ModContent.ItemType <HellsGaze>(),
                ModContent.ItemType <InfernalAppendage>(),
                ModContent.ItemType <InfernalJavelin>(),
                ModContent.ItemType <InfernalSword>(),
                ModContent.ItemType <DiabolicHorn>(),
                ModContent.ItemType <SevenSins>(),
                ModContent.ItemType <InfernalStaff>(),
                ModContent.ItemType <EyeOfTheInferno>(),
                ModContent.ItemType <InfernalShield>(),
                ItemID.GreaterHealingPotion
            }),
                $"Use a [i:{ModContent.ItemType<CursedCloth>()}] in the Underworld at any time.",
                "",
                "SpiritMod/Textures/BossChecklist/InfernonTexture",
                "SpiritMod/NPCs/Boss/Infernon/Infernon_Head_Boss",
                null
                );

            spiritMod.AddBoss(
                7.3f,
                "Dusking",
                () => MyWorld.downedDusking,
                new BCIDData(
                    new List <int> {
                ModContent.NPCType <Dusking>()
            },
                    new List <int> {
                ModContent.ItemType <DuskCrown>()
            },
                    new List <int> {
                ModContent.ItemType <Trophy6>(),
                ModContent.ItemType <DuskingMask>()
            },
                    new List <int> {
                ModContent.ItemType <DuskPendant>(),
                ModContent.ItemType <CrystalShadow>(),
                ModContent.ItemType <ShadowflameSword>(),
                ModContent.ItemType <UmbraStaff>(),
                ModContent.ItemType <ShadowSphere>(),
                ModContent.ItemType <Shadowmoor>(),
                ModContent.ItemType <DuskStone>(),
                ItemID.GreaterHealingPotion
            }),
                $"Use a [i:{ModContent.ItemType<DuskCrown>()}] anywhere at nighttime.",
                "",
                "SpiritMod/Textures/BossChecklist/DuskingTexture",
                "SpiritMod/NPCs/Boss/Dusking/Dusking_Head_Boss",
                null
                );

            spiritMod.AddBoss(
                12.4f,
                "Atlas",
                () => MyWorld.downedAtlas,
                new BCIDData(
                    new List <int> {
                ModContent.NPCType <Atlas>()
            },
                    new List <int> {
                ModContent.ItemType <StoneSkin>()
            },
                    new List <int> {
                ModContent.ItemType <Trophy8>(),
                ModContent.ItemType <AtlasMask>(),
                ModContent.ItemType <AtlasBox>()
            },
                    new List <int> {
                ModContent.ItemType <AtlasEye>(),
                ModContent.ItemType <KingRock>(),
                ModContent.ItemType <Mountain>(),
                ModContent.ItemType <TitanboundBulwark>(),
                ModContent.ItemType <CragboundStaff>(),
                ModContent.ItemType <QuakeFist>(),
                ModContent.ItemType <Earthshatter>(),
                ModContent.ItemType <ArcaneGeyser>(),
                ItemID.GreaterHealingPotion
            }),
                $"Use a [i:{ModContent.ItemType<StoneSkin>()}] anywhere at any time.",
                "",
                "SpiritMod/Textures/BossChecklist/AtlasTexture",
                "SpiritMod/NPCs/Boss/Atlas/Atlas_Head_Boss",
                null
                );

            spiritMod.AddBoss(
                14.2f,
                "Overseer",
                () => MyWorld.downedOverseer,
                new BCIDData(
                    new List <int> {
                ModContent.NPCType <Overseer>()
            },
                    new List <int> {
                ModContent.ItemType <SpiritIdol>()
            },
                    new List <int> {
                ModContent.ItemType <Trophy9>(),
                ModContent.ItemType <OverseerMask>()
            },
                    new List <int> {
                ModContent.ItemType <EternityCharm>(),
                ModContent.ItemType <EternityEssence>(),
                ModContent.ItemType <Eternity>(),
                ModContent.ItemType <SoulExpulsor>(),
                ModContent.ItemType <EssenseTearer>(),
                ModContent.ItemType <AeonRipper>(),
                ItemID.SuperHealingPotion
            }),
                $"Use a [i:{ModContent.ItemType<SpiritIdol>()}] in the Spirit Biome during nighttime",
                "",
                "SpiritMod/Textures/BossChecklist/OverseerTexture",
                "SpiritMod/NPCs/Boss/Overseer/Overseer_Head_Boss",
                null
                );
        }