aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gtPlusPlus/xmod/ic2/item/RotorBase.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/gtPlusPlus/xmod/ic2/item/RotorBase.java')
-rw-r--r--src/main/java/gtPlusPlus/xmod/ic2/item/RotorBase.java100
1 files changed, 100 insertions, 0 deletions
diff --git a/src/main/java/gtPlusPlus/xmod/ic2/item/RotorBase.java b/src/main/java/gtPlusPlus/xmod/ic2/item/RotorBase.java
new file mode 100644
index 0000000000..b9f9ab68ef
--- /dev/null
+++ b/src/main/java/gtPlusPlus/xmod/ic2/item/RotorBase.java
@@ -0,0 +1,100 @@
+package gtPlusPlus.xmod.ic2.item;
+
+import java.util.List;
+
+import net.minecraft.client.Minecraft;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.item.ItemStack;
+import net.minecraft.util.ResourceLocation;
+import net.minecraft.util.StatCollector;
+
+import ic2.api.item.IKineticRotor;
+import ic2.core.block.kineticgenerator.gui.GuiWaterKineticGenerator;
+import ic2.core.block.kineticgenerator.gui.GuiWindKineticGenerator;
+import ic2.core.init.InternalName;
+import ic2.core.item.resources.ItemWindRotor;
+
+public class RotorBase extends ItemWindRotor{
+
+ private final int maxWindStrength;
+ private final int minWindStrength;
+ private final int radius;
+ private final float efficiency;
+ private final ResourceLocation renderTexture;
+ private final boolean water;
+
+ public RotorBase(final InternalName internalName, final int Radius, final int durability, final float efficiency, final int minWindStrength, final int maxWindStrength, final ResourceLocation RenderTexture)
+ {
+ super(internalName, Radius, durability, efficiency, minWindStrength, maxWindStrength, RenderTexture);
+
+
+
+ this.setMaxStackSize(1);
+ this.setMaxDamage(durability);
+
+ this.radius = Radius;
+ this.efficiency = efficiency;
+ this.renderTexture = RenderTexture;
+ this.minWindStrength = minWindStrength;
+ this.maxWindStrength = maxWindStrength;
+ this.water = true;
+ }
+
+ @Override
+ public void addInformation(final ItemStack itemStack, final EntityPlayer player, final List info, final boolean b)
+ {
+ info.add(StatCollector.translateToLocalFormatted("ic2.itemrotor.wind.info", new Object[] { Integer.valueOf(this.minWindStrength), Integer.valueOf(this.maxWindStrength) }));
+ IKineticRotor.GearboxType type = null;
+ if ((Minecraft.getMinecraft().currentScreen != null) && ((Minecraft.getMinecraft().currentScreen instanceof GuiWaterKineticGenerator))) {
+ type = IKineticRotor.GearboxType.WATER;
+ } else if ((Minecraft.getMinecraft().currentScreen != null) && ((Minecraft.getMinecraft().currentScreen instanceof GuiWindKineticGenerator))) {
+ type = IKineticRotor.GearboxType.WIND;
+ }
+ if (type != null) {
+ //info.add(StatCollector.translateToLocal("ic2.itemrotor.fitsin." + isAcceptedType(itemStack, type)));
+ }
+ }
+
+ @Override
+ public String getTextureFolder()
+ {
+ return "rotors";
+ }
+
+ @Override
+ public int getDiameter(final ItemStack stack)
+ {
+ return this.radius;
+ }
+
+ @Override
+ public ResourceLocation getRotorRenderTexture(final ItemStack stack)
+ {
+ return this.renderTexture;
+ }
+
+ @Override
+ public float getEfficiency(final ItemStack stack)
+ {
+ return this.efficiency;
+ }
+
+ @Override
+ public int getMinWindStrength(final ItemStack stack)
+ {
+ return this.minWindStrength;
+ }
+
+ @Override
+ public int getMaxWindStrength(final ItemStack stack)
+ {
+ return this.maxWindStrength;
+ }
+
+ @Override
+ public boolean isAcceptedType(final ItemStack stack, final IKineticRotor.GearboxType type)
+ {
+ return (type == IKineticRotor.GearboxType.WIND) || (this.water);
+ }
+}
+