Added Greater Antidote.

Fixed typos.
This commit is contained in:
FyloZ 2020-06-05 18:45:49 -04:00
parent 8f448c6ca5
commit 69b1610428
19 changed files with 92 additions and 45 deletions

View File

@ -96,8 +96,8 @@ namespace Decimation.Content
{ {
bossChecklist.Call("AddBossWithInfo", "The Bloodshot Eye", 2.5f, bossChecklist.Call("AddBossWithInfo", "The Bloodshot Eye", 2.5f,
(Func<bool>) (() => DecimationWorld.downedBloodshotEye), "INSERT LATER"); (Func<bool>) (() => DecimationWorld.downedBloodshotEye), "INSERT LATER");
bossChecklist.Call("AddBossWithInfo", "The Ancient Dune Worm", 5.7f, bossChecklist.Call("AddBossWithInfo", "The Dune Wyrm", 5.7f,
(Func<bool>) (() => DecimationWorld.downedDuneWorm), "INSERT LATER"); (Func<bool>) (() => DecimationWorld.downedDuneWyrm), "INSERT LATER");
bossChecklist.Call("AddBossWithInfo", "Arachnus", 20f, bossChecklist.Call("AddBossWithInfo", "Arachnus", 20f,
(Func<bool>) (() => DecimationWorld.downedArachnus), "INSERT LATER"); (Func<bool>) (() => DecimationWorld.downedArachnus), "INSERT LATER");
} }

View File

@ -15,14 +15,14 @@ namespace Decimation.Content
public class DecimationWorld : ModWorld public class DecimationWorld : ModWorld
{ {
public static bool downedBloodshotEye; public static bool downedBloodshotEye;
public static bool downedDuneWorm; public static bool downedDuneWyrm;
public static bool downedArachnus; public static bool downedArachnus;
public static bool downedWyvern; public static bool downedWyvern;
public override void Initialize() public override void Initialize()
{ {
downedBloodshotEye = false; downedBloodshotEye = false;
downedDuneWorm = false; downedDuneWyrm = false;
downedArachnus = false; downedArachnus = false;
downedWyvern = false; downedWyvern = false;
} }
@ -31,7 +31,7 @@ namespace Decimation.Content
{ {
var downed = new List<string>(); var downed = new List<string>();
if (downedBloodshotEye) downed.Add("downedBloodshotEye"); if (downedBloodshotEye) downed.Add("downedBloodshotEye");
if (downedDuneWorm) downed.Add("downedDuneWorm"); if (downedDuneWyrm) downed.Add("downedDuneWyrm");
if (downedArachnus) downed.Add("downedArachnus"); if (downedArachnus) downed.Add("downedArachnus");
if (downedWyvern) downed.Add("downedWyvern"); if (downedWyvern) downed.Add("downedWyvern");
return new TagCompound { return new TagCompound {
@ -42,7 +42,7 @@ namespace Decimation.Content
{ {
var downed = tag.GetList<string>("downed"); var downed = tag.GetList<string>("downed");
downedBloodshotEye = downed.Contains("downedBloodshotEye"); downedBloodshotEye = downed.Contains("downedBloodshotEye");
downedDuneWorm = downed.Contains("downedDuneWorm"); downedDuneWyrm = downed.Contains("downedDuneWyrm");
downedArachnus = downed.Contains("downedArachnus"); downedArachnus = downed.Contains("downedArachnus");
downedWyvern = downed.Contains("downedWyvern"); downedWyvern = downed.Contains("downedWyvern");
} }
@ -50,7 +50,7 @@ namespace Decimation.Content
{ {
BitsByte flags = new BitsByte(); BitsByte flags = new BitsByte();
flags[0] = downedBloodshotEye; //+1 flag number for each new boss flags[0] = downedBloodshotEye; //+1 flag number for each new boss
flags[1] = downedDuneWorm; flags[1] = downedDuneWyrm;
flags[2] = downedArachnus; flags[2] = downedArachnus;
flags[3] = downedWyvern; flags[3] = downedWyvern;
writer.Write(flags); writer.Write(flags);
@ -59,7 +59,7 @@ namespace Decimation.Content
{ {
BitsByte flags = reader.ReadByte(); BitsByte flags = reader.ReadByte();
downedBloodshotEye = flags[0]; downedBloodshotEye = flags[0];
downedDuneWorm = flags[1]; downedDuneWyrm = flags[1];
downedArachnus = flags[2]; downedArachnus = flags[2];
downedWyvern = flags[3]; downedWyvern = flags[3];
} }
@ -70,7 +70,7 @@ namespace Decimation.Content
{ {
byte flags = reader.ReadByte(); byte flags = reader.ReadByte();
DecimationWorld.downedBloodshotEye = ((flags & 1) != 0); DecimationWorld.downedBloodshotEye = ((flags & 1) != 0);
DecimationWorld.downedDuneWorm = ((flags & 2) != 0); //double flag numbers with each new boss DecimationWorld.downedDuneWyrm = ((flags & 2) != 0); //double flag numbers with each new boss
DecimationWorld.downedArachnus = ((flags & 4) != 0); DecimationWorld.downedArachnus = ((flags & 4) != 0);
DecimationWorld.downedWyvern = ((flags & 8) != 0); DecimationWorld.downedWyvern = ((flags & 8) != 0);
} }
@ -79,7 +79,7 @@ namespace Decimation.Content
byte flags = reader.ReadByte(); byte flags = reader.ReadByte();
byte flags2 = reader.ReadByte(); byte flags2 = reader.ReadByte();
DecimationWorld.downedBloodshotEye = ((flags & 1) != 0); DecimationWorld.downedBloodshotEye = ((flags & 1) != 0);
DecimationWorld.downedDuneWorm = ((flags & 2) != 0); DecimationWorld.downedDuneWyrm = ((flags & 2) != 0);
DecimationWorld.downedArachnus = ((flags & 4) != 0); DecimationWorld.downedArachnus = ((flags & 4) != 0);
DecimationWorld.downedWyvern = ((flags & 8) != 0); DecimationWorld.downedWyvern = ((flags & 8) != 0);
} }

View File

@ -5,12 +5,12 @@ using Terraria;
using Terraria.ID; using Terraria.ID;
using Terraria.ModLoader; using Terraria.ModLoader;
namespace Decimation.Content.Items.Boss.DuneWorm namespace Decimation.Content.Items.Boss.DuneWyrm
{ {
internal class DesertDessert : DecimationItem internal class DesertDessert : DecimationItem
{ {
protected override string ItemName => "Desert Dessert"; protected override string ItemName => "Desert Dessert";
protected override string ItemTooltip => "Summons the Ancient Dune Worm"; protected override string ItemTooltip => "Summons the Dune Wyrm";
protected override void Init() protected override void Init()
{ {

View File

Before

Width:  |  Height:  |  Size: 394 B

After

Width:  |  Height:  |  Size: 394 B

View File

@ -1,7 +1,7 @@
using Decimation.Content.Items.Misc.Souls; using Decimation.Content.Items.Misc.Souls;
using Decimation.Content.Items.Placeable.DuneWorm; using Decimation.Content.Items.Placeable.DuneWyrm;
using Decimation.Content.Items.Tools; using Decimation.Content.Items.Tools;
using Decimation.Content.Items.Vanity.DuneWorm; using Decimation.Content.Items.Vanity.DuneWyrm;
using Decimation.Content.NPCs.DuneWyrm; using Decimation.Content.NPCs.DuneWyrm;
using Decimation.Lib.Items; using Decimation.Lib.Items;
using Decimation.Lib.Util; using Decimation.Lib.Util;
@ -9,7 +9,7 @@ using Terraria;
using Terraria.ID; using Terraria.ID;
using Terraria.ModLoader; using Terraria.ModLoader;
namespace Decimation.Content.Items.Boss.DuneWorm namespace Decimation.Content.Items.Boss.DuneWyrm
{ {
internal class DuneWyrmTreasureBag : DecimationItem internal class DuneWyrmTreasureBag : DecimationItem
{ {
@ -37,9 +37,9 @@ namespace Decimation.Content.Items.Boss.DuneWorm
player.QuickSpawnItem(ItemID.FossilOre, Main.rand.Next(10, 15)); player.QuickSpawnItem(ItemID.FossilOre, Main.rand.Next(10, 15));
player.QuickSpawnItem(ModContent.ItemType<TheHourGlass>()); player.QuickSpawnItem(ModContent.ItemType<TheHourGlass>());
if (Main.rand.Next(7) == 0) if (Main.rand.Next(7) == 0)
player.QuickSpawnItem(ModContent.ItemType<DuneWormMask>()); player.QuickSpawnItem(ModContent.ItemType<DuneWyrmMask>());
if (Main.rand.NextBool(13)) if (Main.rand.NextBool(13))
player.QuickSpawnItem(ModContent.ItemType<DuneWormTrophy>()); player.QuickSpawnItem(ModContent.ItemType<DuneWyrmTrophy>());
} }
} }
} }

View File

Before

Width:  |  Height:  |  Size: 585 B

After

Width:  |  Height:  |  Size: 585 B

View File

@ -2,20 +2,20 @@ using Decimation.Lib.Items;
using Terraria; using Terraria;
using Terraria.ModLoader; using Terraria.ModLoader;
namespace Decimation.Content.Items.Placeable.DuneWorm namespace Decimation.Content.Items.Placeable.DuneWyrm
{ {
internal class DuneWormTrophy : DecimationPlaceableItem internal class DuneWyrmTrophy : DecimationPlaceableItem
{ {
protected override string ItemName => "Ancient Dune Worm Trophy"; protected override string ItemName => "Dune Wyrm Trophy";
protected override string ItemTooltip => "Achievement get!"; protected override string ItemTooltip => "Achievement get!";
protected override int Tile => ModContent.TileType<Tiles.DuneWormTrophy>(); protected override int Tile => ModContent.TileType<Tiles.DuneWyrmTrophy>();
protected override void InitPlaceable() protected override void InitPlaceable()
{ {
item.width = 32; item.width = 32;
item.height = 32; item.height = 32;
this.item.maxStack = 99; item.maxStack = 99;
this.item.value = Item.buyPrice(0, 5); item.value = Item.buyPrice(0, 5);
} }
} }
} }

View File

Before

Width:  |  Height:  |  Size: 3.3 KiB

After

Width:  |  Height:  |  Size: 3.3 KiB

View File

@ -1,4 +1,5 @@
using Decimation.Lib.Items; using Decimation.Lib.Items;
using Decimation.Lib.Util.Builder;
using Terraria; using Terraria;
using Terraria.ID; using Terraria.ID;
using Terraria.ModLoader; using Terraria.ModLoader;
@ -9,7 +10,7 @@ namespace Decimation.Content.Items.Potions
internal class Antidote : DecimationItem internal class Antidote : DecimationItem
{ {
protected override string ItemName => "Antidote"; protected override string ItemName => "Antidote";
protected override string ItemTooltip => "Cure poison and venom."; protected override string ItemTooltip => "Cures poison and venom.";
protected override void Init() protected override void Init()
{ {
@ -32,13 +33,12 @@ namespace Decimation.Content.Items.Potions
protected override ModRecipe GetRecipe() protected override ModRecipe GetRecipe()
{ {
ModRecipe recipe = GetNewModRecipe(this, 1, TileID.AlchemyTable); return new RecipeBuilder(this)
.WithIngredient(ItemID.Waterleaf)
recipe.AddIngredient(ItemID.Waterleaf); .WithIngredient(ItemID.Moonglow)
recipe.AddIngredient(ItemID.Moonglow); .WithIngredient(ItemID.BottledHoney)
recipe.AddIngredient(ItemID.BottledHoney); .WithStation(TileID.AlchemyTable)
.Build();
return recipe;
} }
} }
} }

View File

@ -0,0 +1,44 @@
using Decimation.Content.Buffs.Debuffs;
using Decimation.Lib.Items;
using Decimation.Lib.Util.Builder;
using Terraria;
using Terraria.ID;
using Terraria.ModLoader;
namespace Decimation.Content.Items.Potions
{
public class GreaterAntidote : DecimationItem
{
protected override string ItemName => "Greater Antidote";
protected override string ItemTooltip => "Cures poison, venom, confusion and avian flu";
protected override void Init()
{
item.CloneDefaults(ModContent.ItemType<Antidote>());
item.width = 24;
item.height = 26;
}
public override bool UseItem(Player player)
{
player.ClearBuff(BuffID.Poisoned);
player.ClearBuff(BuffID.Venom);
player.ClearBuff(BuffID.Confused);
player.ClearBuff(ModContent.BuffType<AvianFlu>());
return true;
}
protected override ModRecipe GetRecipe()
{
return new RecipeBuilder(this, 5)
.WithIngredient(ModContent.ItemType<Antidote>())
.WithIngredient(ItemID.ManaPotion)
.WithIngredient(ItemID.GreaterHealingPotion)
.WithIngredient(ModContent.ItemType<EnchantedMushroom>(), 5)
.WithStation(TileID.AlchemyTable)
.Build();
}
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 367 B

View File

@ -2,12 +2,12 @@ using Decimation.Lib.Items;
using Decimation.Lib.Util; using Decimation.Lib.Util;
using Terraria.ModLoader; using Terraria.ModLoader;
namespace Decimation.Content.Items.Vanity.DuneWorm namespace Decimation.Content.Items.Vanity.DuneWyrm
{ {
[AutoloadEquip(EquipType.Head)] [AutoloadEquip(EquipType.Head)]
internal class DuneWormMask : DecimationItem internal class DuneWyrmMask : DecimationItem
{ {
protected override string ItemName => "Ancient Dune Worm Mask"; protected override string ItemName => "Ancient Dune Wyrm Mask";
protected override string ItemTooltip => "A bit dusty"; protected override string ItemTooltip => "A bit dusty";
protected override void Init() protected override void Init()
@ -16,6 +16,7 @@ namespace Decimation.Content.Items.Vanity.DuneWorm
item.height = 34; item.height = 34;
item.rare = Rarity.Orange.GetRarityValue(); item.rare = Rarity.Orange.GetRarityValue();
item.vanity = true; item.vanity = true;
item.maxStack = 1;
} }
public override bool DrawHead() public override bool DrawHead()

View File

Before

Width:  |  Height:  |  Size: 3.3 KiB

After

Width:  |  Height:  |  Size: 3.3 KiB

View File

Before

Width:  |  Height:  |  Size: 5.2 KiB

After

Width:  |  Height:  |  Size: 5.2 KiB

View File

@ -56,7 +56,7 @@ namespace Decimation.Content.NPCs.DuneWyrm
public override void BossLoot(ref string name, ref int potionType) public override void BossLoot(ref string name, ref int potionType)
{ {
name = "The Dune Wyrm"; name = "The Dune Wyrm";
DecimationWorld.downedDuneWorm = true; DecimationWorld.downedDuneWyrm = true;
potionType = ItemID.HealingPotion; potionType = ItemID.HealingPotion;
base.BossLoot(ref name, ref potionType); base.BossLoot(ref name, ref potionType);

View File

@ -1,5 +1,5 @@
using System.Collections.Generic; using System.Collections.Generic;
using Decimation.Content.Items.Boss.DuneWorm; using Decimation.Content.Items.Boss.DuneWyrm;
using Decimation.Content.Items.Misc; using Decimation.Content.Items.Misc;
using Decimation.Content.Items.Misc.Souls; using Decimation.Content.Items.Misc.Souls;
using Decimation.Content.Projectiles; using Decimation.Content.Projectiles;
@ -159,7 +159,7 @@ namespace Decimation.Content.NPCs.TownNPCs
nextSlot++; nextSlot++;
} }
if (DecimationWorld.downedDuneWorm) if (DecimationWorld.downedDuneWyrm)
{ {
shop.item[nextSlot].SetDefaults(ModContent.ItemType<SoulofTime>()); shop.item[nextSlot].SetDefaults(ModContent.ItemType<SoulofTime>());
nextSlot++; nextSlot++;

View File

@ -1,31 +1,29 @@
using Microsoft.Xna.Framework; using Microsoft.Xna.Framework;
using System;
using Terraria; using Terraria;
using Terraria.ID;
using Terraria.ModLoader; using Terraria.ModLoader;
using Terraria.ObjectData; using Terraria.ObjectData;
namespace Decimation.Content.Tiles namespace Decimation.Content.Tiles
{ {
class DuneWormTrophy : ModTile class DuneWyrmTrophy : ModTile
{ {
public override void SetDefaults() public override void SetDefaults()
{ {
Main.tileFrameImportant[Type] = true; Main.tileFrameImportant[Type] = true;
Main.tileLavaDeath[Type] = true; Main.tileLavaDeath[Type] = true;
TileObjectData.newTile.CopyFrom(TileObjectData.Style3x3Wall); TileObjectData.newTile.CopyFrom(TileObjectData.Style3x3Wall);
TileObjectData.newTile.CoordinateHeights = new int[] { 16, 16, 16 }; TileObjectData.newTile.CoordinateHeights = new[] {16, 16, 16};
TileObjectData.addTile(Type); TileObjectData.addTile(Type);
dustType = 7; dustType = 7;
disableSmartCursor = true; disableSmartCursor = true;
ModTranslation name = CreateMapEntryName(); ModTranslation name = CreateMapEntryName();
name.SetDefault("Dune Worm Trophy"); name.SetDefault("Dune Wyrm Trophy");
AddMapEntry(new Color(120, 85, 60), name); AddMapEntry(new Color(120, 85, 60), name);
} }
public override void KillMultiTile(int i, int j, int frameX, int frameY) public override void KillMultiTile(int i, int j, int frameX, int frameY)
{ {
Item.NewItem(i * 16, j * 16, 48, 48, ModContent.ItemType<Items.Placeable.DuneWorm.DuneWormTrophy>()); Item.NewItem(i * 16, j * 16, 48, 48, ModContent.ItemType<Items.Placeable.DuneWyrm.DuneWyrmTrophy>());
} }
} }
} }

View File

Before

Width:  |  Height:  |  Size: 1.3 KiB

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

@ -14,11 +14,15 @@ namespace Decimation.Lib.Util.Builder
public RecipeBuilder(Mod mod, ModItem result, int resultQuantity = 1) public RecipeBuilder(Mod mod, ModItem result, int resultQuantity = 1)
{ {
_mod = mod;
_result = result.item.type; _result = result.item.type;
_resultQuantity = resultQuantity; _resultQuantity = resultQuantity;
} }
public RecipeBuilder(ModItem result, int resultQuantity = 1) : this(Content.Decimation.Instance, result,
resultQuantity)
{
}
public RecipeBuilder WithIngredient(int item, int quantity = 1) public RecipeBuilder WithIngredient(int item, int quantity = 1)
{ {
_ingredients.Add(item, quantity); _ingredients.Add(item, quantity);