aboutsummaryrefslogtreecommitdiff
path: root/src/Java/gtPlusPlus/core/item
diff options
context:
space:
mode:
authorDraknyte1 <Draknyte1@hotmail.com>2016-12-27 22:17:24 +1000
committerDraknyte1 <Draknyte1@hotmail.com>2016-12-27 22:17:24 +1000
commitd41a850da5a9bcfe7dda85dba2aad08387833d04 (patch)
tree1e52640e23ebbd3acec577f9342f2c4f1f70cf65 /src/Java/gtPlusPlus/core/item
parentc364c247e74765014d9c6441ebbaf6761e68eb05 (diff)
downloadGT5-Unofficial-d41a850da5a9bcfe7dda85dba2aad08387833d04.tar.gz
GT5-Unofficial-d41a850da5a9bcfe7dda85dba2aad08387833d04.tar.bz2
GT5-Unofficial-d41a850da5a9bcfe7dda85dba2aad08387833d04.zip
+ Added the Slow Builders Ring, which toggles crouch on while worn. (Baubles Required)
$ Fixed Distillation tower recipe for Helium/hydrogen blobs.
Diffstat (limited to 'src/Java/gtPlusPlus/core/item')
-rw-r--r--src/Java/gtPlusPlus/core/item/ModItems.java1
-rw-r--r--src/Java/gtPlusPlus/core/item/general/ItemSlowBuildingRing.java121
2 files changed, 122 insertions, 0 deletions
diff --git a/src/Java/gtPlusPlus/core/item/ModItems.java b/src/Java/gtPlusPlus/core/item/ModItems.java
index b212263d45..2a6b767295 100644
--- a/src/Java/gtPlusPlus/core/item/ModItems.java
+++ b/src/Java/gtPlusPlus/core/item/ModItems.java
@@ -106,6 +106,7 @@ public final class ModItems {
public static Item itemPersonalCloakingDevice;
public static Item itemPersonalCloakingDeviceCharged;
public static Item itemPersonalHealingDevice;
+ public static Item itemSlowBuildingRing;
public static MultiPickaxeBase MP_GTMATERIAL;
public static MultiSpadeBase MS_GTMATERIAL;
diff --git a/src/Java/gtPlusPlus/core/item/general/ItemSlowBuildingRing.java b/src/Java/gtPlusPlus/core/item/general/ItemSlowBuildingRing.java
new file mode 100644
index 0000000000..2d1c758116
--- /dev/null
+++ b/src/Java/gtPlusPlus/core/item/general/ItemSlowBuildingRing.java
@@ -0,0 +1,121 @@
+package gtPlusPlus.core.item.general;
+
+import gtPlusPlus.core.creative.AddToCreativeTab;
+import gtPlusPlus.core.lib.CORE;
+import gtPlusPlus.core.util.item.ItemUtils;
+
+import java.util.List;
+
+import net.minecraft.entity.Entity;
+import net.minecraft.entity.EntityLivingBase;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.item.Item;
+import net.minecraft.item.ItemStack;
+import net.minecraft.util.EnumChatFormatting;
+import net.minecraft.world.World;
+import baubles.api.BaubleType;
+import baubles.api.IBauble;
+import cpw.mods.fml.common.Optional;
+import cpw.mods.fml.common.registry.GameRegistry;
+
+@Optional.InterfaceList(value = {@Optional.Interface(iface = "baubles.api.IBauble", modid = "Baubles"), @Optional.Interface(iface = "baubles.api.BaubleType", modid = "Baubles")})
+public class ItemSlowBuildingRing extends Item implements IBauble{
+
+ private final String unlocalizedName = "SlowBuildingRing";
+
+ public ItemSlowBuildingRing(){
+ this.setCreativeTab(AddToCreativeTab.tabMachines);
+ this.setUnlocalizedName(unlocalizedName);
+ this.setMaxStackSize(1);
+ this.setTextureName(CORE.MODID + ":" + "personalCloakingDevice");
+ ItemUtils.getSimpleStack(this);
+ GameRegistry.registerItem(this, unlocalizedName);
+ }
+
+ @Override
+ public void onUpdate(ItemStack itemStack, World worldObj, Entity player, int p_77663_4_, boolean p_77663_5_) {
+ if (worldObj.isRemote) {
+ return;
+ }
+ if (player instanceof EntityPlayer){
+ for (ItemStack is : ((EntityPlayer) player).inventory.mainInventory) {
+ if (is == itemStack) {
+ continue;
+ }
+ if (is != null) {
+
+
+ }
+ }
+ }
+ super.onUpdate(itemStack, worldObj, player, p_77663_4_, p_77663_5_);
+ }
+
+ @Override
+ public String getItemStackDisplayName(ItemStack p_77653_1_) {
+
+ return (EnumChatFormatting.YELLOW+"Slow Building Ring"+EnumChatFormatting.GRAY);
+ }
+
+ @Override
+ public boolean showDurabilityBar(ItemStack stack)
+ {
+ return false;
+ }
+
+ @Override
+ public void addInformation(ItemStack stack, EntityPlayer aPlayer, List list, boolean bool) {
+ list.add("");
+ list.add(EnumChatFormatting.GREEN+"Worn as a Ring within Baubles."+EnumChatFormatting.GRAY);
+ list.add(EnumChatFormatting.GREEN+"Prevents you from sprinting and keeps you stuck crouching."+EnumChatFormatting.GRAY);
+ list.add(EnumChatFormatting.GREEN+"Press shift once worn to active, take off to stop the effect."+EnumChatFormatting.GRAY);
+ list.add("");
+ super.addInformation(stack, aPlayer, list, bool);
+ }
+
+ @Override
+ public boolean canEquip(ItemStack arg0, EntityLivingBase arg1) {
+ return true;
+ }
+
+ @Override
+ public boolean canUnequip(ItemStack arg0, EntityLivingBase arg1) {
+ return true;
+ }
+
+ @Override
+ public BaubleType getBaubleType(ItemStack arg0) {
+ return BaubleType.RING;
+ }
+
+ @Override //TODO
+ public void onEquipped(ItemStack arg0, EntityLivingBase arg1) {
+ doEffect(arg1);
+ }
+
+ @Override //TODO
+ public void onUnequipped(ItemStack arg0, EntityLivingBase arg1) {
+ if (arg1.worldObj.isRemote){
+ if (arg1.isSneaking()){
+ arg1.setSneaking(false);
+ }
+ }
+ }
+
+ @Override //TODO
+ public void onWornTick(ItemStack arg0, EntityLivingBase arg1) {
+ doEffect(arg1);
+ }
+
+ private static void doEffect(EntityLivingBase arg1){
+ if (arg1.worldObj.isRemote){
+ if (!arg1.isSneaking()){
+ arg1.setSneaking(true);
+ }
+ else if (arg1.isSneaking()){
+ arg1.setSprinting(false);
+ }
+ }
+ }
+
+}