Added the Quenched Living Armour Downgrade.

This commit is contained in:
WayofTime 2016-09-27 17:15:24 -04:00
parent 82a73ba0cd
commit 8d2ea249ac
5 changed files with 83 additions and 6 deletions

View file

@ -9,7 +9,7 @@ import WayofTime.bloodmagic.api.livingArmour.LivingArmourUpgrade;
public class LivingArmourUpgradeCrippledArm extends LivingArmourUpgrade
{
public static final int[] costs = new int[] { -50 };
public static final int[] costs = new int[] { -150 };
public LivingArmourUpgradeCrippledArm(int level)
{

View file

@ -0,0 +1,58 @@
package WayofTime.bloodmagic.livingArmour.downgrade;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.world.World;
import WayofTime.bloodmagic.api.Constants;
import WayofTime.bloodmagic.api.livingArmour.ILivingArmour;
import WayofTime.bloodmagic.api.livingArmour.LivingArmourUpgrade;
public class LivingArmourUpgradeQuenched extends LivingArmourUpgrade
{
public static final int[] costs = new int[] { -100 };
public LivingArmourUpgradeQuenched(int level)
{
super(level);
}
@Override
public void onTick(World world, EntityPlayer player, ILivingArmour livingArmour)
{
}
@Override
public String getUniqueIdentifier()
{
return Constants.Mod.MODID + ".upgrade.quenched";
}
@Override
public int getMaxTier()
{
return 1;
}
@Override
public int getCostOfUpgrade()
{
return costs[this.level];
}
@Override
public void writeToNBT(NBTTagCompound tag)
{
}
@Override
public void readFromNBT(NBTTagCompound tag)
{
}
@Override
public String getUnlocalizedName()
{
return tooltipBase + "quenched";
}
}

View file

@ -3,6 +3,7 @@ package WayofTime.bloodmagic.registry;
import WayofTime.bloodmagic.api.livingArmour.LivingArmourHandler;
import WayofTime.bloodmagic.livingArmour.downgrade.LivingArmourUpgradeBattleHungry;
import WayofTime.bloodmagic.livingArmour.downgrade.LivingArmourUpgradeCrippledArm;
import WayofTime.bloodmagic.livingArmour.downgrade.LivingArmourUpgradeQuenched;
import WayofTime.bloodmagic.livingArmour.downgrade.LivingArmourUpgradeSlippery;
import WayofTime.bloodmagic.livingArmour.downgrade.LivingArmourUpgradeSlowness;
import WayofTime.bloodmagic.livingArmour.tracker.StatTrackerArrowShot;
@ -97,5 +98,6 @@ public class ModArmourTrackers
LivingArmourHandler.registerArmourUpgrade(new LivingArmourUpgradeNightSight(0));
LivingArmourHandler.registerArmourUpgrade(new LivingArmourUpgradeSlippery(0));
LivingArmourHandler.registerArmourUpgrade(new LivingArmourUpgradeBattleHungry(0));
LivingArmourHandler.registerArmourUpgrade(new LivingArmourUpgradeQuenched(0));
}
}

View file

@ -6,6 +6,7 @@ import net.minecraft.entity.projectile.EntityArrow;
import net.minecraft.init.Enchantments;
import net.minecraft.init.Items;
import net.minecraft.inventory.EntityEquipmentSlot;
import net.minecraft.item.EnumAction;
import net.minecraft.item.ItemArrow;
import net.minecraft.item.ItemStack;
import net.minecraft.util.EnumHand;
@ -23,6 +24,7 @@ import WayofTime.bloodmagic.api.livingArmour.LivingArmourUpgrade;
import WayofTime.bloodmagic.item.armour.ItemLivingArmour;
import WayofTime.bloodmagic.livingArmour.LivingArmour;
import WayofTime.bloodmagic.livingArmour.downgrade.LivingArmourUpgradeCrippledArm;
import WayofTime.bloodmagic.livingArmour.downgrade.LivingArmourUpgradeQuenched;
import WayofTime.bloodmagic.livingArmour.tracker.StatTrackerArrowShot;
import WayofTime.bloodmagic.livingArmour.tracker.StatTrackerGrimReaperSprint;
import WayofTime.bloodmagic.livingArmour.tracker.StatTrackerJump;
@ -39,7 +41,7 @@ public class LivingArmourHandler
@SubscribeEvent
public void onPlayerClick(PlayerInteractEvent event)
{
if (event.isCancelable() && event.getHand() == EnumHand.OFF_HAND)
if (event.isCancelable())
{
EntityPlayer player = event.getEntityPlayer();
@ -48,6 +50,8 @@ public class LivingArmourHandler
ItemStack chestStack = player.getItemStackFromSlot(EntityEquipmentSlot.CHEST);
LivingArmour armour = ItemLivingArmour.getLivingArmour(chestStack);
if (armour != null)
{
if (event.getHand() == EnumHand.OFF_HAND)
{
LivingArmourUpgrade upgrade = ItemLivingArmour.getUpgrade(Constants.Mod.MODID + ".upgrade.crippledArm", chestStack);
@ -56,6 +60,18 @@ public class LivingArmourHandler
event.setCanceled(true);
}
}
if (event.getItemStack().getItemUseAction() == EnumAction.DRINK)
{
//TODO: See if the item is a splash potion? Those should be usable.
LivingArmourUpgrade upgrade = ItemLivingArmour.getUpgrade(Constants.Mod.MODID + ".upgrade.quenched", chestStack);
if (upgrade instanceof LivingArmourUpgradeQuenched)
{
event.setCanceled(true);
}
}
}
}
}
}

View file

@ -492,6 +492,7 @@ tooltip.BloodMagic.livingArmour.upgrade.slowness=Limp Leg
tooltip.BloodMagic.livingArmour.upgrade.crippledArm=Crippled Arm
tooltip.BloodMagic.livingArmour.upgrade.slippery=Loose Traction
tooltip.BloodMagic.livingArmour.upgrade.battleHunger=Battle Hungry
tooltip.BloodMagic.livingArmour.upgrade.quenched=Quenched
tooltip.BloodMagic.livingArmour.upgrade.level=%s (Level %d)
tooltip.BloodMagic.livingArmour.upgrade.progress=%s (%d/100)
tooltip.BloodMagic.livingArmour.upgrade.points=&6Upgrade points: %s / %s