feat: vanilla rework to Plantera weapon drops
This commit is contained in:
parent
9c26c8eef7
commit
3f05870f05
7 changed files with 128 additions and 25 deletions
3
.gitignore
vendored
Normal file
3
.gitignore
vendored
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
# Auto-generated directories
|
||||||
|
bin/
|
||||||
|
obj/
|
|
@ -1,10 +1,12 @@
|
||||||
|
using System;
|
||||||
|
using System.Linq;
|
||||||
using Terraria;
|
using Terraria;
|
||||||
using Terraria.ID;
|
using Terraria.ID;
|
||||||
using Terraria.ModLoader;
|
using Terraria.ModLoader;
|
||||||
using Terraria.GameContent.ItemDropRules;
|
using Terraria.GameContent.ItemDropRules;
|
||||||
using Continuity.Content.Items;
|
using Continuity.Content.Items;
|
||||||
|
|
||||||
namespace Continuity.Content.NPCs
|
namespace Continuity.Content
|
||||||
{
|
{
|
||||||
public class PlanteraDrops : GlobalNPC
|
public class PlanteraDrops : GlobalNPC
|
||||||
{
|
{
|
||||||
|
@ -12,7 +14,35 @@ namespace Continuity.Content.NPCs
|
||||||
{
|
{
|
||||||
if (npc.type == NPCID.Plantera)
|
if (npc.type == NPCID.Plantera)
|
||||||
{
|
{
|
||||||
npcLoot.Add(ItemDropRule.Common(ModContent.ItemType<PalishadeTissue>(), 1, 15, 25));
|
npcLoot.Add(ItemDropRule.Common(ModContent.ItemType<PalishadeTissue>(), 1, 25, 35));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public class PlanteraBossBag : GlobalItem
|
||||||
|
{
|
||||||
|
public override void ModifyItemLoot(Item item, ItemLoot itemLoot)
|
||||||
|
{
|
||||||
|
if (item.type == ItemID.PlanteraBossBag)
|
||||||
|
{
|
||||||
|
short[] toRemove = {
|
||||||
|
ItemID.TheAxe,
|
||||||
|
ItemID.PygmyStaff,
|
||||||
|
ItemID.Seedling,
|
||||||
|
ItemID.ThornHook,
|
||||||
|
};
|
||||||
|
foreach (var i in toRemove)
|
||||||
|
{
|
||||||
|
itemLoot.RemoveWhere(rule => rule is CommonDropNotScalingWithLuck drop
|
||||||
|
&& drop.itemId == i);
|
||||||
|
}
|
||||||
|
itemLoot.RemoveWhere(rule => rule is CommonDrop drop
|
||||||
|
&& drop.itemId == ItemID.TempleKey);
|
||||||
|
|
||||||
|
foreach (var rule in itemLoot.Get())
|
||||||
|
{
|
||||||
|
itemLoot.RemoveWhere(rule => rule is OneFromRulesRule);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,19 +0,0 @@
|
||||||
using Terraria;
|
|
||||||
using Terraria.ID;
|
|
||||||
using Terraria.ModLoader;
|
|
||||||
using Continuity.Content.Items;
|
|
||||||
|
|
||||||
namespace Continuity.Content.Palishade
|
|
||||||
{
|
|
||||||
public class PlanteraRecipes : ModSystem
|
|
||||||
{
|
|
||||||
public override void AddRecipes() {
|
|
||||||
// Seedler
|
|
||||||
Recipe recipe = Recipe.Create(ItemID.Seedler);
|
|
||||||
recipe.AddIngredient(ItemID.ChlorophyteBar, 12);
|
|
||||||
recipe.AddIngredient(ModContent.ItemType<PalishadeTissue>(), 9);
|
|
||||||
recipe.AddIngredient(331, 6);
|
|
||||||
recipe.Register();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
88
Content/Recipes.cs
Normal file
88
Content/Recipes.cs
Normal file
|
@ -0,0 +1,88 @@
|
||||||
|
using Terraria;
|
||||||
|
using Terraria.ID;
|
||||||
|
using Terraria.ModLoader;
|
||||||
|
using Continuity.Content.Items;
|
||||||
|
|
||||||
|
namespace Continuity.Content
|
||||||
|
{
|
||||||
|
public class PlanteraRecipes : ModSystem
|
||||||
|
{
|
||||||
|
public override void AddRecipes() {
|
||||||
|
// Seedler
|
||||||
|
Recipe recipe = Recipe.Create(ItemID.Seedler);
|
||||||
|
recipe.AddIngredient(ItemID.ChlorophyteBar, 12);
|
||||||
|
recipe.AddIngredient(ItemID.Stinger, 3);
|
||||||
|
recipe.AddIngredient(ModContent.ItemType<PalishadeTissue>(), 9);
|
||||||
|
recipe.AddIngredient(331, 6);
|
||||||
|
recipe.Register();
|
||||||
|
|
||||||
|
// The Axe
|
||||||
|
recipe = Recipe.Create(ItemID.TheAxe);
|
||||||
|
recipe.AddIngredient(ItemID.ChlorophyteBar, 15);
|
||||||
|
recipe.AddIngredient(ItemID.Stinger, 2);
|
||||||
|
recipe.AddIngredient(ModContent.ItemType<PalishadeTissue>(), 10);
|
||||||
|
recipe.AddIngredient(331, 3);
|
||||||
|
recipe.Register();
|
||||||
|
|
||||||
|
// Temple Key
|
||||||
|
recipe = Recipe.Create(ItemID.TempleKey);
|
||||||
|
recipe.AddIngredient(ItemID.ChlorophyteBar, 2);
|
||||||
|
recipe.AddIngredient(ModContent.ItemType<PalishadeTissue>(), 3);
|
||||||
|
recipe.Register();
|
||||||
|
|
||||||
|
// Nettle Burst
|
||||||
|
recipe = Recipe.Create(ItemID.NettleBurst);
|
||||||
|
recipe.AddIngredient(ItemID.ChlorophyteBar, 10);
|
||||||
|
recipe.AddIngredient(ItemID.Stinger, 4);
|
||||||
|
recipe.AddIngredient(ModContent.ItemType<PalishadeTissue>(), 6);
|
||||||
|
recipe.AddIngredient(ItemID.Vine, 3);
|
||||||
|
recipe.Register();
|
||||||
|
|
||||||
|
// Pygmy Staff
|
||||||
|
recipe = Recipe.Create(ItemID.PygmyStaff);
|
||||||
|
recipe.AddIngredient(ItemID.ChlorophyteBar, 12);
|
||||||
|
recipe.AddIngredient(ItemID.Stinger, 4);
|
||||||
|
recipe.AddIngredient(ModContent.ItemType<PalishadeTissue>(), 9);
|
||||||
|
recipe.AddIngredient(ItemID.Vine, 2);
|
||||||
|
recipe.Register();
|
||||||
|
|
||||||
|
// Flower Pow
|
||||||
|
recipe = Recipe.Create(ItemID.FlowerPow);
|
||||||
|
recipe.AddIngredient(ItemID.ChlorophyteBar, 11);
|
||||||
|
recipe.AddIngredient(ItemID.JungleRose, 1);
|
||||||
|
recipe.AddIngredient(ModContent.ItemType<PalishadeTissue>(), 10);
|
||||||
|
recipe.AddIngredient(ItemID.Vine, 3);
|
||||||
|
recipe.Register();
|
||||||
|
|
||||||
|
// Leaf Blower
|
||||||
|
recipe = Recipe.Create(ItemID.LeafBlower);
|
||||||
|
recipe.AddIngredient(ItemID.ChlorophyteBar, 10);
|
||||||
|
recipe.AddIngredient(ModContent.ItemType<PalishadeTissue>(), 8);
|
||||||
|
recipe.AddIngredient(ItemID.Vine, 1);
|
||||||
|
recipe.AddIngredient(331, 8);
|
||||||
|
recipe.Register();
|
||||||
|
|
||||||
|
// Venus Magnum
|
||||||
|
recipe = Recipe.Create(ItemID.VenusMagnum);
|
||||||
|
recipe.AddIngredient(ItemID.ChlorophyteBar, 12);
|
||||||
|
recipe.AddIngredient(ItemID.Handgun, 1);
|
||||||
|
recipe.AddIngredient(ModContent.ItemType<PalishadeTissue>(), 6);
|
||||||
|
recipe.AddIngredient(ItemID.Vine, 2);
|
||||||
|
recipe.Register();
|
||||||
|
|
||||||
|
// Grenade Launcher
|
||||||
|
recipe = Recipe.Create(ItemID.GrenadeLauncher);
|
||||||
|
recipe.AddIngredient(ItemID.ChlorophyteBar, 10);
|
||||||
|
recipe.AddRecipeGroup(RecipeGroupID.IronBar, 8);
|
||||||
|
recipe.AddIngredient(ModContent.ItemType<PalishadeTissue>(), 10);
|
||||||
|
recipe.Register();
|
||||||
|
|
||||||
|
// Thorn Hook
|
||||||
|
recipe = Recipe.Create(ItemID.ThornHook);
|
||||||
|
recipe.AddIngredient(ItemID.Stinger, 3);
|
||||||
|
recipe.AddIngredient(ModContent.ItemType<PalishadeTissue>(), 2);
|
||||||
|
recipe.AddIngredient(ItemID.Vine, 5);
|
||||||
|
recipe.Register();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -3,7 +3,7 @@ Items: {
|
||||||
Tooltip:
|
Tooltip:
|
||||||
'''
|
'''
|
||||||
A clump of dark red cells from Plantera.
|
A clump of dark red cells from Plantera.
|
||||||
Hardens when exposed to bright light.
|
[c/B4202A:Hardens when exposed to bright light.]
|
||||||
'''
|
'''
|
||||||
DisplayName: Palishade Tissue
|
DisplayName: Palishade Tissue
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,13 +2,13 @@
|
||||||
"profiles": {
|
"profiles": {
|
||||||
"Terraria": {
|
"Terraria": {
|
||||||
"commandName": "Executable",
|
"commandName": "Executable",
|
||||||
"executablePath": "$(DotNetName)",
|
"executablePath": "/etc/profiles/per-user/devraza/bin/dotnet",
|
||||||
"commandLineArgs": "$(tMLPath)",
|
"commandLineArgs": "$(tMLPath)",
|
||||||
"workingDirectory": "$(tMLSteamPath)"
|
"workingDirectory": "$(tMLSteamPath)"
|
||||||
},
|
},
|
||||||
"TerrariaServer": {
|
"TerrariaServer": {
|
||||||
"commandName": "Executable",
|
"commandName": "Executable",
|
||||||
"executablePath": "$(DotNetName)",
|
"executablePath": "/etc/profiles/per-user/devraza/bin/dotnet",
|
||||||
"commandLineArgs": "$(tMLServerPath)",
|
"commandLineArgs": "$(tMLServerPath)",
|
||||||
"workingDirectory": "$(tMLSteamPath)"
|
"workingDirectory": "$(tMLSteamPath)"
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
displayName = Continuity
|
displayName = Continuity
|
||||||
author = The Continuity Team
|
author = The Continuity Team
|
||||||
version = 0.1
|
sortAfter = CalamityMod
|
||||||
|
version = 0.1
|
||||||
|
|
Reference in a new issue