Added Greater Antidote.
Fixed typos.
@ -96,8 +96,8 @@ namespace Decimation.Content
|
||||
{
|
||||
bossChecklist.Call("AddBossWithInfo", "The Bloodshot Eye", 2.5f,
|
||||
(Func<bool>) (() => DecimationWorld.downedBloodshotEye), "INSERT LATER");
|
||||
bossChecklist.Call("AddBossWithInfo", "The Ancient Dune Worm", 5.7f,
|
||||
(Func<bool>) (() => DecimationWorld.downedDuneWorm), "INSERT LATER");
|
||||
bossChecklist.Call("AddBossWithInfo", "The Dune Wyrm", 5.7f,
|
||||
(Func<bool>) (() => DecimationWorld.downedDuneWyrm), "INSERT LATER");
|
||||
bossChecklist.Call("AddBossWithInfo", "Arachnus", 20f,
|
||||
(Func<bool>) (() => DecimationWorld.downedArachnus), "INSERT LATER");
|
||||
}
|
||||
|
||||
@ -15,14 +15,14 @@ namespace Decimation.Content
|
||||
public class DecimationWorld : ModWorld
|
||||
{
|
||||
public static bool downedBloodshotEye;
|
||||
public static bool downedDuneWorm;
|
||||
public static bool downedDuneWyrm;
|
||||
public static bool downedArachnus;
|
||||
public static bool downedWyvern;
|
||||
|
||||
public override void Initialize()
|
||||
{
|
||||
downedBloodshotEye = false;
|
||||
downedDuneWorm = false;
|
||||
downedDuneWyrm = false;
|
||||
downedArachnus = false;
|
||||
downedWyvern = false;
|
||||
}
|
||||
@ -31,7 +31,7 @@ namespace Decimation.Content
|
||||
{
|
||||
var downed = new List<string>();
|
||||
if (downedBloodshotEye) downed.Add("downedBloodshotEye");
|
||||
if (downedDuneWorm) downed.Add("downedDuneWorm");
|
||||
if (downedDuneWyrm) downed.Add("downedDuneWyrm");
|
||||
if (downedArachnus) downed.Add("downedArachnus");
|
||||
if (downedWyvern) downed.Add("downedWyvern");
|
||||
return new TagCompound {
|
||||
@ -42,7 +42,7 @@ namespace Decimation.Content
|
||||
{
|
||||
var downed = tag.GetList<string>("downed");
|
||||
downedBloodshotEye = downed.Contains("downedBloodshotEye");
|
||||
downedDuneWorm = downed.Contains("downedDuneWorm");
|
||||
downedDuneWyrm = downed.Contains("downedDuneWyrm");
|
||||
downedArachnus = downed.Contains("downedArachnus");
|
||||
downedWyvern = downed.Contains("downedWyvern");
|
||||
}
|
||||
@ -50,7 +50,7 @@ namespace Decimation.Content
|
||||
{
|
||||
BitsByte flags = new BitsByte();
|
||||
flags[0] = downedBloodshotEye; //+1 flag number for each new boss
|
||||
flags[1] = downedDuneWorm;
|
||||
flags[1] = downedDuneWyrm;
|
||||
flags[2] = downedArachnus;
|
||||
flags[3] = downedWyvern;
|
||||
writer.Write(flags);
|
||||
@ -59,7 +59,7 @@ namespace Decimation.Content
|
||||
{
|
||||
BitsByte flags = reader.ReadByte();
|
||||
downedBloodshotEye = flags[0];
|
||||
downedDuneWorm = flags[1];
|
||||
downedDuneWyrm = flags[1];
|
||||
downedArachnus = flags[2];
|
||||
downedWyvern = flags[3];
|
||||
}
|
||||
@ -70,7 +70,7 @@ namespace Decimation.Content
|
||||
{
|
||||
byte flags = reader.ReadByte();
|
||||
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.downedWyvern = ((flags & 8) != 0);
|
||||
}
|
||||
@ -79,7 +79,7 @@ namespace Decimation.Content
|
||||
byte flags = reader.ReadByte();
|
||||
byte flags2 = reader.ReadByte();
|
||||
DecimationWorld.downedBloodshotEye = ((flags & 1) != 0);
|
||||
DecimationWorld.downedDuneWorm = ((flags & 2) != 0);
|
||||
DecimationWorld.downedDuneWyrm = ((flags & 2) != 0);
|
||||
DecimationWorld.downedArachnus = ((flags & 4) != 0);
|
||||
DecimationWorld.downedWyvern = ((flags & 8) != 0);
|
||||
}
|
||||
|
||||
@ -5,12 +5,12 @@ using Terraria;
|
||||
using Terraria.ID;
|
||||
using Terraria.ModLoader;
|
||||
|
||||
namespace Decimation.Content.Items.Boss.DuneWorm
|
||||
namespace Decimation.Content.Items.Boss.DuneWyrm
|
||||
{
|
||||
internal class DesertDessert : DecimationItem
|
||||
{
|
||||
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()
|
||||
{
|
||||
|
Before Width: | Height: | Size: 394 B After Width: | Height: | Size: 394 B |
@ -1,7 +1,7 @@
|
||||
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.Vanity.DuneWorm;
|
||||
using Decimation.Content.Items.Vanity.DuneWyrm;
|
||||
using Decimation.Content.NPCs.DuneWyrm;
|
||||
using Decimation.Lib.Items;
|
||||
using Decimation.Lib.Util;
|
||||
@ -9,7 +9,7 @@ using Terraria;
|
||||
using Terraria.ID;
|
||||
using Terraria.ModLoader;
|
||||
|
||||
namespace Decimation.Content.Items.Boss.DuneWorm
|
||||
namespace Decimation.Content.Items.Boss.DuneWyrm
|
||||
{
|
||||
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(ModContent.ItemType<TheHourGlass>());
|
||||
if (Main.rand.Next(7) == 0)
|
||||
player.QuickSpawnItem(ModContent.ItemType<DuneWormMask>());
|
||||
player.QuickSpawnItem(ModContent.ItemType<DuneWyrmMask>());
|
||||
if (Main.rand.NextBool(13))
|
||||
player.QuickSpawnItem(ModContent.ItemType<DuneWormTrophy>());
|
||||
player.QuickSpawnItem(ModContent.ItemType<DuneWyrmTrophy>());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Before Width: | Height: | Size: 585 B After Width: | Height: | Size: 585 B |
@ -2,20 +2,20 @@ using Decimation.Lib.Items;
|
||||
using Terraria;
|
||||
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 int Tile => ModContent.TileType<Tiles.DuneWormTrophy>();
|
||||
protected override int Tile => ModContent.TileType<Tiles.DuneWyrmTrophy>();
|
||||
|
||||
protected override void InitPlaceable()
|
||||
{
|
||||
item.width = 32;
|
||||
item.height = 32;
|
||||
this.item.maxStack = 99;
|
||||
this.item.value = Item.buyPrice(0, 5);
|
||||
item.maxStack = 99;
|
||||
item.value = Item.buyPrice(0, 5);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Before Width: | Height: | Size: 3.3 KiB After Width: | Height: | Size: 3.3 KiB |
@ -1,4 +1,5 @@
|
||||
using Decimation.Lib.Items;
|
||||
using Decimation.Lib.Util.Builder;
|
||||
using Terraria;
|
||||
using Terraria.ID;
|
||||
using Terraria.ModLoader;
|
||||
@ -9,7 +10,7 @@ namespace Decimation.Content.Items.Potions
|
||||
internal class Antidote : DecimationItem
|
||||
{
|
||||
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()
|
||||
{
|
||||
@ -32,13 +33,12 @@ namespace Decimation.Content.Items.Potions
|
||||
|
||||
protected override ModRecipe GetRecipe()
|
||||
{
|
||||
ModRecipe recipe = GetNewModRecipe(this, 1, TileID.AlchemyTable);
|
||||
|
||||
recipe.AddIngredient(ItemID.Waterleaf);
|
||||
recipe.AddIngredient(ItemID.Moonglow);
|
||||
recipe.AddIngredient(ItemID.BottledHoney);
|
||||
|
||||
return recipe;
|
||||
return new RecipeBuilder(this)
|
||||
.WithIngredient(ItemID.Waterleaf)
|
||||
.WithIngredient(ItemID.Moonglow)
|
||||
.WithIngredient(ItemID.BottledHoney)
|
||||
.WithStation(TileID.AlchemyTable)
|
||||
.Build();
|
||||
}
|
||||
}
|
||||
}
|
||||
44
Content/Items/Potions/GreaterAntidote.cs
Normal 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();
|
||||
}
|
||||
}
|
||||
}
|
||||
BIN
Content/Items/Potions/GreaterAntidote.png
Normal file
|
After Width: | Height: | Size: 367 B |
@ -2,12 +2,12 @@ using Decimation.Lib.Items;
|
||||
using Decimation.Lib.Util;
|
||||
using Terraria.ModLoader;
|
||||
|
||||
namespace Decimation.Content.Items.Vanity.DuneWorm
|
||||
namespace Decimation.Content.Items.Vanity.DuneWyrm
|
||||
{
|
||||
[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 void Init()
|
||||
@ -16,6 +16,7 @@ namespace Decimation.Content.Items.Vanity.DuneWorm
|
||||
item.height = 34;
|
||||
item.rare = Rarity.Orange.GetRarityValue();
|
||||
item.vanity = true;
|
||||
item.maxStack = 1;
|
||||
}
|
||||
|
||||
public override bool DrawHead()
|
||||
|
Before Width: | Height: | Size: 3.3 KiB After Width: | Height: | Size: 3.3 KiB |
|
Before Width: | Height: | Size: 5.2 KiB After Width: | Height: | Size: 5.2 KiB |
@ -56,7 +56,7 @@ namespace Decimation.Content.NPCs.DuneWyrm
|
||||
public override void BossLoot(ref string name, ref int potionType)
|
||||
{
|
||||
name = "The Dune Wyrm";
|
||||
DecimationWorld.downedDuneWorm = true;
|
||||
DecimationWorld.downedDuneWyrm = true;
|
||||
|
||||
potionType = ItemID.HealingPotion;
|
||||
base.BossLoot(ref name, ref potionType);
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
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.Souls;
|
||||
using Decimation.Content.Projectiles;
|
||||
@ -159,7 +159,7 @@ namespace Decimation.Content.NPCs.TownNPCs
|
||||
nextSlot++;
|
||||
}
|
||||
|
||||
if (DecimationWorld.downedDuneWorm)
|
||||
if (DecimationWorld.downedDuneWyrm)
|
||||
{
|
||||
shop.item[nextSlot].SetDefaults(ModContent.ItemType<SoulofTime>());
|
||||
nextSlot++;
|
||||
|
||||
@ -1,31 +1,29 @@
|
||||
using Microsoft.Xna.Framework;
|
||||
using System;
|
||||
using Terraria;
|
||||
using Terraria.ID;
|
||||
using Terraria.ModLoader;
|
||||
using Terraria.ObjectData;
|
||||
|
||||
namespace Decimation.Content.Tiles
|
||||
{
|
||||
class DuneWormTrophy : ModTile
|
||||
class DuneWyrmTrophy : ModTile
|
||||
{
|
||||
public override void SetDefaults()
|
||||
{
|
||||
Main.tileFrameImportant[Type] = true;
|
||||
Main.tileLavaDeath[Type] = true;
|
||||
TileObjectData.newTile.CopyFrom(TileObjectData.Style3x3Wall);
|
||||
TileObjectData.newTile.CoordinateHeights = new int[] { 16, 16, 16 };
|
||||
TileObjectData.newTile.CoordinateHeights = new[] {16, 16, 16};
|
||||
TileObjectData.addTile(Type);
|
||||
dustType = 7;
|
||||
disableSmartCursor = true;
|
||||
ModTranslation name = CreateMapEntryName();
|
||||
name.SetDefault("Dune Worm Trophy");
|
||||
name.SetDefault("Dune Wyrm Trophy");
|
||||
AddMapEntry(new Color(120, 85, 60), name);
|
||||
}
|
||||
|
||||
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>());
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.3 KiB |
@ -14,11 +14,15 @@ namespace Decimation.Lib.Util.Builder
|
||||
|
||||
public RecipeBuilder(Mod mod, ModItem result, int resultQuantity = 1)
|
||||
{
|
||||
_mod = mod;
|
||||
_result = result.item.type;
|
||||
_resultQuantity = resultQuantity;
|
||||
}
|
||||
|
||||
public RecipeBuilder(ModItem result, int resultQuantity = 1) : this(Content.Decimation.Instance, result,
|
||||
resultQuantity)
|
||||
{
|
||||
}
|
||||
|
||||
public RecipeBuilder WithIngredient(int item, int quantity = 1)
|
||||
{
|
||||
_ingredients.Add(item, quantity);
|
||||
|
||||