Files
ForgottenWawiTech/Content/NPCs/OriginalLexy/Lexy.cs
T
2025-11-21 14:14:57 +00:00

63 lines
1.9 KiB
C#

using Terraria;
using Terraria.ID;
using Terraria.ModLoader;
using Microsoft.Xna.Framework;
using Terraria.GameContent.ItemDropRules;
using ForgottenWawiTech.Content.Items.TreasureBags;
namespace ForgottenWawiTech.Content.NPCs.OriginalLexy
{
[AutoloadBossHead]
public class Lexy : ModNPC
{
public override void SetStaticDefaults()
{
// DisplayName.SetDefault("Original Lexy");
Main.npcFrameCount[NPC.type] = 1;
}
public override void SetDefaults()
{
NPC.width = 40;
NPC.height = 40;
NPC.damage = 1786;
NPC.defense = 290;
NPC.lifeMax = 1000000;
NPC.HitSound = SoundID.NPCHit1;
NPC.DeathSound = SoundID.NPCDeath1;
NPC.knockBackResist = 0f;
NPC.boss = true;
NPC.aiStyle = -1;
NPC.value = Item.buyPrice(0, 1, 0, 0);
}
public override void AI()
{
// For now, the boss instantly dies
NPC.life = 0;
NPC.checkDead();
}
public override void ModifyNPCLoot(NPCLoot npcLoot)
{
npcLoot.Add(ItemDropRule.BossBag(ModContent.ItemType<LexyBossBag>()));
}
public override void OnKill()
{
/* // Spawn LexyNPC when killed
if (Main.netMode != NetmodeID.MultiplayerClient)
{
NPC.NewNPC(NPC.GetSource_Death(), (int)NPC.Center.X, (int)NPC.Center.Y, ModContent.NPCType<LexyNPC>());
}
else
{
NetMessage.SendData(MessageID.SpawnNPC, number: ModContent.NPCType<LexyNPC>(), number2: NPC.whoAmI);
} */
// Set a world flag or similar to indicate Lexy has been defeated
WorldDefeatedBosses.Lexy = true;
// Immediate sync of world flags
WorldDefeatedBosses.Sync(ModContent.GetInstance<ForgottenWawiTech>());
}
}
}