c:\Users\Devin\Documents\My Games\Terraria\ModLoader\Mod Sources\Enderuim\Items\Armor\EnderuimChest.cs(36,4) : error CS0103: The name 'bubbleArmour' does not exist in the current context
c:\Users\Devin\Documents\My Games\Terraria\ModLoader\Mod Sources\Enderuim\Projectiles\EnderuimBubble.cs(45,26) : error CS0161: 'Enderuim.Projectiles.EnderuimBubble.PreHurt(bool, bool, ref int, ref int, ref bool, ref bool, ref bool, ref bool, ref string)': not all code paths return a value
Code:
using System;
using System.Collections.Generic;
using Terraria;
using Terraria.ID;
using Terraria.ModLoader;
namespace Enderuim.Items.Armor
{
public class EnderuimChest : ModItem
{
public override bool Autoload(ref string name, ref string texture, IList<EquipType> equips)
{
equips.Add(EquipType.Body);
return true;
}
public override void SetDefaults()
{
item.name = "Enderuim Chestplate";
item.width = 22;
item.height = 24;
AddTooltip2("Increase of Melee speed and Melee damage");
item.value = 100000;
item.rare = 2;
item.defense = 38;
}
public override bool IsArmorSet(Item head, Item body, Item legs)
{
return body.type == mod.ItemType("EnderuimHelm") && legs.type == mod.ItemType("EnderuimLeggings");
}
public override void UpdateArmorSet(Player player)
{
player.setBonus = "Increased Melee Stats";
player.meleeDamage *= 0.3f;
player.meleeSpeed += 0.3f;
bubbleArmour = true;
}
public override void UpdateEquip(Player player)
{
player.meleeDamage += 0.2f;
player.meleeSpeed += 0.2f;
}
}
}
Code:
using System;
using System.IO;
using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Graphics;
using Terraria;
using Terraria.ModLoader;
namespace Enderuim.Projectiles
{
public class EnderuimBubble : ModPlayer
{
public bool bubbleArmor;
public bool bubbleActive;
public int bubbleTimer;
public override void ResetEffects()
{
this.bubbleArmor = false;
this.bubbleActive = false;
}
public override void PostUpdateEquips()
{
if(this.bubbleArmor)
{
if(player.velocity == Vector2.Zero)
{
if(this.bubbleTimer++ >= 120) // 2 second cooldown
{
this.bubbleActive = true;
}
}
else
{
this.bubbleTimer = 0;
this.bubbleActive = false;
}
}
else
{
this.bubbleTimer = 0;
this.bubbleActive = false;
}
}
public override bool PreHurt(bool pvp, bool quiet, ref int damage, ref int hitDirection, ref bool crit, ref bool customDamage, ref bool playSound, ref bool genGore, ref string deathText)
{
if(this.bubbleActive)
{
damage = 0; // Will take 0 damage when the player is hurt when the bubble is active.
}
}
}
}