Add boss bags

This commit is contained in:
2025-11-21 14:14:57 +00:00
parent 02177bb173
commit bd2427e102
17 changed files with 269 additions and 9 deletions
@@ -0,0 +1,38 @@
using Terraria;
using Terraria.ID;
using Terraria.ModLoader;
using ForgottenWawiTech.Content.Items.Accessories;
using ForgottenWawiTech.Content.Items.Materials;
using ForgottenWawiTech.Content.NPCs.OriginalLexy;
using Terraria.GameContent.ItemDropRules;
namespace ForgottenWawiTech.Content.Items.TreasureBags
{
public class CorruptedSwarmBossBag : ModItem
{
public override void SetStaticDefaults()
{
ItemID.Sets.BossBag[Type] = true;
}
public override void SetDefaults()
{
Item.width = 32;
Item.height = 32;
Item.maxStack = 9999;
Item.consumable = true;
Item.rare = ItemRarityID.Expert;
Item.expert = true;
Item.value = Item.buyPrice(gold: 10);
}
public override bool CanRightClick() => true;
public override void ModifyItemLoot(ItemLoot itemLoot)
{
itemLoot.Add(ItemDropRule.Common(ModContent.ItemType<UnstableMatter>(), 1, 28, 40));
itemLoot.Add(ItemDropRule.Common(ModContent.ItemType<MalfunctioningNanites>(), 1, 12, 18));
// itemLoot.Add(ItemDropRule.CoinsBasedOnNPCValue(ModContent.NPCType<Lexy>())); // Boss isnt registered yet
}
}
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 504 B

+40
View File
@@ -0,0 +1,40 @@
using Terraria;
using Terraria.ID;
using Terraria.ModLoader;
using ForgottenWawiTech.Content.Items.Accessories;
using ForgottenWawiTech.Content.Items.Materials;
using ForgottenWawiTech.Content.NPCs.OriginalLexy;
using Terraria.GameContent.ItemDropRules;
namespace ForgottenWawiTech.Content.Items.TreasureBags
{
public class LexyBossBag : ModItem
{
public override void SetStaticDefaults()
{
ItemID.Sets.BossBag[Type] = true;
}
public override void SetDefaults()
{
Item.width = 32;
Item.height = 32;
Item.maxStack = 9999;
Item.consumable = true;
Item.rare = ItemRarityID.Expert;
Item.expert = true;
Item.value = Item.buyPrice(gold: 10);
}
public override bool CanRightClick() => true;
public override void ModifyItemLoot(ItemLoot itemLoot)
{
itemLoot.Add(ItemDropRule.Common(ModContent.ItemType<VisorShard>(), 1, 28, 40));
itemLoot.Add(ItemDropRule.Common(ModContent.ItemType<MalfunctioningNanites>(), 1, 12, 18));
itemLoot.Add(ItemDropRule.CoinsBasedOnNPCValue(ModContent.NPCType<Lexy>()));
// TODO: Add Lexy accessories and weapons
itemLoot.Add(ItemDropRule.Common(ModContent.ItemType<EssenceOfClutches>(), 10, 1, 1));
}
}
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 504 B

@@ -0,0 +1,39 @@
using Terraria;
using Terraria.ID;
using Terraria.ModLoader;
using ForgottenWawiTech.Content.Items.Materials;
using ForgottenWawiTech.Content.Items.Weapons.Magic;
using ForgottenWawiTech.Content.NPCs.OriginalLyyka;
using Terraria.GameContent.ItemDropRules;
namespace ForgottenWawiTech.Content.Items.TreasureBags
{
public class LyykaBossBag : ModItem
{
public override void SetStaticDefaults()
{
ItemID.Sets.BossBag[Type] = true;
}
public override void SetDefaults()
{
Item.width = 32;
Item.height = 32;
Item.maxStack = 9999;
Item.consumable = true;
Item.rare = ItemRarityID.Expert;
Item.expert = true;
Item.value = Item.buyPrice(gold: 10);
}
public override bool CanRightClick() => true;
public override void ModifyItemLoot(ItemLoot itemLoot)
{
itemLoot.Add(ItemDropRule.Common(ModContent.ItemType<LyykaBossDrop>(), 1, 28, 40));
itemLoot.Add(ItemDropRule.Common(ModContent.ItemType<MalfunctioningNanites>(), 1, 12, 18));
itemLoot.Add(ItemDropRule.CoinsBasedOnNPCValue(ModContent.NPCType<Lyyka>()));
// TODO: Add Lyyka accessories and weapons
}
}
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 504 B

@@ -0,0 +1,40 @@
using Terraria;
using Terraria.ID;
using Terraria.ModLoader;
using ForgottenWawiTech.Content.Items.Materials;
using ForgottenWawiTech.Content.Items.Weapons.Magic;
using ForgottenWawiTech.Content.NPCs.OriginalNeptune;
using Terraria.GameContent.ItemDropRules;
using ForgottenWawiTech.Content.Items.Tiles.Furniture;
namespace ForgottenWawiTech.Content.Items.TreasureBags
{
public class NeptuneBossBag : ModItem
{
public override void SetStaticDefaults()
{
ItemID.Sets.BossBag[Type] = true;
}
public override void SetDefaults()
{
Item.width = 32;
Item.height = 32;
Item.maxStack = 9999;
Item.consumable = true;
Item.rare = ItemRarityID.Expert;
Item.expert = true;
Item.value = Item.sellPrice(gold: 12);
}
public override bool CanRightClick() => true;
public override void ModifyItemLoot(ItemLoot itemLoot)
{
itemLoot.Add(ItemDropRule.Common(ModContent.ItemType<HalfEatenFish>(), 1, 28, 40));
itemLoot.Add(ItemDropRule.Common(ModContent.ItemType<NeptuneTrophyItem>()));
itemLoot.Add(ItemDropRule.CoinsBasedOnNPCValue(ModContent.NPCType<Neptune>()));
// TODO: Add Neptune accessories and weapons
}
}
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 504 B

+44
View File
@@ -0,0 +1,44 @@
using Terraria;
using Terraria.ID;
using Terraria.ModLoader;
using ForgottenWawiTech.Content.Items.Accessories;
using ForgottenWawiTech.Content.Items.Materials;
using ForgottenWawiTech.Content.Items.Weapons.Magic;
using ForgottenWawiTech.Content.NPCs.OriginalNiko;
using ForgottenWawiTech.Content.Items.Armor.Vanities.OneShot;
using Terraria.GameContent.ItemDropRules;
namespace ForgottenWawiTech.Content.Items.TreasureBags
{
public class NikoBossBag : ModItem
{
public override void SetStaticDefaults()
{
ItemID.Sets.BossBag[Type] = true;
}
public override void SetDefaults()
{
Item.width = 32;
Item.height = 32;
Item.maxStack = 9999;
Item.consumable = true;
Item.rare = ItemRarityID.Expert;
Item.expert = true;
Item.value = Item.sellPrice(gold: 16);
}
public override bool CanRightClick() => true;
public override void ModifyItemLoot(ItemLoot itemLoot)
{
itemLoot.Add(ItemDropRule.Common(ModContent.ItemType<FallenAngelFeather>(), 1, 28, 40));
itemLoot.Add(ItemDropRule.Common(ModContent.ItemType<MalfunctioningNanites>(), 1, 12, 18));
itemLoot.Add(ItemDropRule.CoinsBasedOnNPCValue(ModContent.NPCType<Niko>()));
itemLoot.Add(ItemDropRule.Common(ModContent.ItemType<ControlledSingularity>(), 4, 1, 9));
itemLoot.Add(ItemDropRule.Common(ModContent.ItemType<MessiahHat>(), 10));
itemLoot.Add(ItemDropRule.Common(ModContent.ItemType<MessiahCloak>(), 10));
// TODO: Add Niko accessories and weapons
}
}
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 504 B