Files
2025-11-27 14:42:12 +00:00

100 lines
3.8 KiB
C#

using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Graphics;
using System;
using System.Collections.Generic;
using Terraria.ModLoader;
using Terraria;
using Terraria.ID;
namespace ForgottenWawiTech.Systems
{
public class BossChecklist : ModSystem
{
public override void PostSetupContent()
{
if (ModLoader.TryGetMod("BossChecklist", out Mod bossChecklist))
{
// For reference, SCal is 23f and Boss Rush is 25.99f. The lower the float, the earlier it appears in the list.
// Lyyka
bossChecklist.Call(
"LogBoss",
Mod,
nameof(Content.NPCs.OriginalLyyka.Lyyka),
24f,
() => WorldDefeatedBosses.Lyyka,
ModContent.NPCType<Content.NPCs.OriginalLyyka.Lyyka>(),
new Dictionary<string, object>
{
{ "spawnItem", ModContent.ItemType<Content.Items.SummonItems.LyykaSummon>() }
}
);
// Terra (Miniboss of Lyyka)
bossChecklist.Call(
"LogMiniBoss",
Mod,
nameof(Content.NPCs.OriginalLyyka.Terra),
24.01f,
() => WorldDefeatedBosses.Terra,
ModContent.NPCType<Content.NPCs.OriginalLyyka.Terra>()
);
// Clara (Miniboss of Lyyka)
bossChecklist.Call(
"LogMiniBoss",
Mod,
nameof(Content.NPCs.OriginalLyyka.Clara),
24.02f,
() => WorldDefeatedBosses.Clara,
ModContent.NPCType<Content.NPCs.OriginalLyyka.Clara>()
);
// Neptune
bossChecklist.Call(
"LogBoss",
Mod,
nameof(Content.NPCs.OriginalNeptune.Neptune),
24.1f,
() => WorldDefeatedBosses.Neptune,
ModContent.NPCType<Content.NPCs.OriginalNeptune.Neptune>(),
new Dictionary<string, object>
{
{ "spawnItem", ModContent.ItemType<Content.Items.SummonItems.NeptuneSummon>() }
}
);
// Raccoon
bossChecklist.Call(
"LogMiniBoss",
Mod,
nameof(Content.NPCs.OriginalNeptune.Raccoon),
24.11f,
() => WorldDefeatedBosses.Raccoon,
ModContent.NPCType<Content.NPCs.OriginalNeptune.Raccoon>()
);
// Lexy
bossChecklist.Call(
"LogBoss",
Mod,
nameof(Content.NPCs.OriginalLexy.Lexy),
24.2f,
() => WorldDefeatedBosses.Lexy,
ModContent.NPCType<Content.NPCs.OriginalLexy.Lexy>(),
new Dictionary<string, object>
{
{ "spawnItem", ModContent.ItemType<Content.Items.SummonItems.LexySummon>() }
}
);
// Niko
bossChecklist.Call(
"LogBoss",
Mod,
nameof(Content.NPCs.OriginalNiko.Niko),
24.7f,
() => WorldDefeatedBosses.Niko,
ModContent.NPCType<Content.NPCs.OriginalNiko.Niko>(),
new Dictionary<string, object>
{
{ "spawnItem", ModContent.ItemType<Content.Items.SummonItems.NikoSummon>() }
}
);
}
}
}
}