66 lines
2.6 KiB
C#
66 lines
2.6 KiB
C#
using Terraria;
|
|
using Terraria.ID;
|
|
using Terraria.ModLoader;
|
|
using ForgottenWawiTech.Content.Items.Materials;
|
|
using ForgottenWawiTech.Content.Rarities;
|
|
using ForgottenWawiTech.Content.Tiles.CraftingStations;
|
|
using ForgottenWawiTech.Content.Items.Armor.ProtogenOperativeSet;
|
|
using ForgottenWawiTech.Content.Players;
|
|
|
|
namespace ForgottenWawiTech.Content.Items.Armor.ProtogenSentinelSet
|
|
{
|
|
[AutoloadEquip(EquipType.Head)]
|
|
public class ProtogenSentinelMask : ModItem
|
|
{
|
|
public override void SetDefaults()
|
|
{
|
|
Item.width = 18;
|
|
Item.height = 18;
|
|
Item.value = Item.sellPrice(gold: 60);
|
|
Item.rare = ModContent.RarityType<ProtogenItem>();
|
|
Item.defense = 30;
|
|
}
|
|
|
|
public override void UpdateEquip(Player player)
|
|
{
|
|
player.GetDamage(DamageClass.Ranged) += 0.30f;
|
|
player.GetCritChance(DamageClass.Ranged) += 16;
|
|
player.statLifeMax2 += 70;
|
|
player.statManaMax2 += 60;
|
|
player.endurance += 0.06f;
|
|
}
|
|
|
|
public override bool IsArmorSet(Item head, Item body, Item legs)
|
|
{
|
|
return body.type == ModContent.ItemType<ProtogenSentinelChestplate>() && legs.type == ModContent.ItemType<ProtogenSentinelLeggings>();
|
|
}
|
|
|
|
public override void UpdateArmorSet(Player player)
|
|
{
|
|
player.setBonus = "Summons an AI core that fires adaptive energy beams\nProjectiles have a 20% chance to split into seeking fragments\n+22% ranged damage and critical strike chance\nGrants immunity to most debuffs";
|
|
player.GetDamage(DamageClass.Ranged) += 0.22f;
|
|
player.GetCritChance(DamageClass.Ranged) += 22;
|
|
player.buffImmune[BuffID.Poisoned] = true;
|
|
player.buffImmune[BuffID.OnFire] = true;
|
|
player.buffImmune[BuffID.Bleeding] = true;
|
|
player.buffImmune[BuffID.Confused] = true;
|
|
player.buffImmune[BuffID.Slow] = true;
|
|
player.buffImmune[BuffID.Weak] = true;
|
|
player.buffImmune[BuffID.Silenced] = true;
|
|
player.buffImmune[BuffID.Cursed] = true;
|
|
player.GetModPlayer<ProtogenSentinelPlayer>().EnableSentinelCore();
|
|
}
|
|
|
|
public override void AddRecipes()
|
|
{
|
|
CreateRecipe()
|
|
.AddIngredient(ModContent.ItemType<MalfunctioningNanites>(), 14)
|
|
.AddIngredient(ModContent.ItemType<EnergyCore>(), 8)
|
|
.AddIngredient(ModContent.ItemType<ProtogenOperativeMask>(), 1)
|
|
.AddIngredient(ItemID.Wire, 20)
|
|
.AddTile(ModContent.TileType<HighTechMarvel>())
|
|
.Register();
|
|
}
|
|
}
|
|
}
|