diff options
-rw-r--r-- | src/Java/gtPlusPlus/core/common/compat/COMPAT_Baubles.java | 4 | ||||
-rw-r--r-- | src/Java/gtPlusPlus/core/item/ModItems.java | 1 | ||||
-rw-r--r-- | src/Java/gtPlusPlus/core/item/general/ItemSlowBuildingRing.java | 121 | ||||
-rw-r--r-- | src/Java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java | 2 | ||||
-rw-r--r-- | src/resources/assets/gregtech/textures/gui/multimachines/LFTR.png | bin | 0 -> 2261 bytes |
5 files changed, 125 insertions, 3 deletions
diff --git a/src/Java/gtPlusPlus/core/common/compat/COMPAT_Baubles.java b/src/Java/gtPlusPlus/core/common/compat/COMPAT_Baubles.java index 634fbe47d2..ae5dea04cd 100644 --- a/src/Java/gtPlusPlus/core/common/compat/COMPAT_Baubles.java +++ b/src/Java/gtPlusPlus/core/common/compat/COMPAT_Baubles.java @@ -1,8 +1,7 @@ package gtPlusPlus.core.common.compat; import gtPlusPlus.core.item.ModItems; -import gtPlusPlus.core.item.general.ItemCloakingDevice; -import gtPlusPlus.core.item.general.ItemHealingDevice; +import gtPlusPlus.core.item.general.*; import gtPlusPlus.core.lib.LoadedMods; import gtPlusPlus.core.util.Utils; @@ -22,6 +21,7 @@ public class COMPAT_Baubles { ModItems.itemPersonalCloakingDevice = new ItemCloakingDevice(0); //itemPersonalCloakingDeviceCharged = new ItemCloakingDevice(0).set; ModItems.itemPersonalHealingDevice = new ItemHealingDevice(); + ModItems.itemSlowBuildingRing = new ItemSlowBuildingRing(); } public static void baublesNotLoaded(){ 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); + } + } + } + +} diff --git a/src/Java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java b/src/Java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java index 39e228dd38..4c639e8e13 100644 --- a/src/Java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java +++ b/src/Java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java @@ -368,7 +368,7 @@ public class RECIPES_GREGTECH { private static void distilleryRecipes(){ Utils.LOG_INFO("Registering Distillery/Distillation Tower Recipes."); GT_Values.RA.addDistilleryRecipe(ItemList.Circuit_Integrated.getWithDamage(0L, 4L, new Object[0]), FluidUtils.getFluidStack("air", 1000), FluidUtils.getFluidStack("helium", 1), 400, 30, false); - GT_Values.RA.addDistillationTowerRecipe(FluidUtils.getFluidStack("air", 20000), FluidUtils.getFluidStackArray("helium", 25), ItemUtils.getSimpleStack(ModItems.itemHeliumBlob, 1), 200, 60); + GT_Values.RA.addDistillationTowerRecipe(FluidUtils.getFluidStack("air", 20000), FluidUtils.getFluidStackArray("helium", 25), ItemUtils.getSimpleStack(ModItems.itemHydrogenBlob, 1), 200, 60); //Apatite Distillation /* diff --git a/src/resources/assets/gregtech/textures/gui/multimachines/LFTR.png b/src/resources/assets/gregtech/textures/gui/multimachines/LFTR.png Binary files differnew file mode 100644 index 0000000000..625b8c891b --- /dev/null +++ b/src/resources/assets/gregtech/textures/gui/multimachines/LFTR.png |