aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/common
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/common')
-rw-r--r--src/main/java/common/reactorItem/AbstractReactorItem.java29
-rw-r--r--src/main/java/common/reactorItem/ReactorItem.java48
2 files changed, 77 insertions, 0 deletions
diff --git a/src/main/java/common/reactorItem/AbstractReactorItem.java b/src/main/java/common/reactorItem/AbstractReactorItem.java
new file mode 100644
index 0000000000..e78889b57f
--- /dev/null
+++ b/src/main/java/common/reactorItem/AbstractReactorItem.java
@@ -0,0 +1,29 @@
+package common.reactorItem;
+
+import net.minecraft.item.Item;
+import net.minecraft.item.ItemStack;
+
+public abstract class AbstractReactorItem extends Item {
+
+ private final int[] behaviourID;
+
+ protected AbstractReactorItem(int...behaviourID) {
+ this.behaviourID = behaviourID;
+ }
+
+ @Override
+ public abstract double getDurabilityForDisplay(ItemStack stack);
+
+ @Override
+ public abstract boolean showDurabilityBar(ItemStack stack);
+
+ @Override
+ public final String getUnlocalizedName(ItemStack stack) {
+ return super.hasSubtypes ? (super.getUnlocalizedName() + "." + stack.getItemDamage())
+ : super.getUnlocalizedName();
+ }
+
+ public final int getBehaviourID(int meta) {
+ return behaviourID[meta];
+ }
+}
diff --git a/src/main/java/common/reactorItem/ReactorItem.java b/src/main/java/common/reactorItem/ReactorItem.java
new file mode 100644
index 0000000000..e8dfbef21e
--- /dev/null
+++ b/src/main/java/common/reactorItem/ReactorItem.java
@@ -0,0 +1,48 @@
+package common.reactorItem;
+
+import cpw.mods.fml.common.registry.GameRegistry;
+import net.minecraft.client.renderer.texture.IIconRegister;
+import net.minecraft.creativetab.CreativeTabs;
+import net.minecraft.item.ItemStack;
+import net.minecraft.util.IIcon;
+
+public class ReactorItem extends AbstractReactorItem {
+
+ private static final ReactorItem INSTANCE = new ReactorItem();
+
+ private final IIcon[] icons = new IIcon[50];
+
+ private ReactorItem() {
+ super();
+ }
+
+ public static ReactorItem registerItem() {
+ INSTANCE.setHasSubtypes(true);
+ INSTANCE.setCreativeTab(CreativeTabs.tabMisc);
+ INSTANCE.setMaxStackSize(1);
+ final String unloc = "kekztech_reactor_item";
+ INSTANCE.setUnlocalizedName(unloc);
+ GameRegistry.registerItem(INSTANCE, unloc);
+ return INSTANCE;
+ }
+
+ @Override
+ public void registerIcons(IIconRegister reg) {
+
+ }
+
+ @Override
+ public IIcon getIconFromDamage(int meta) {
+ return icons[meta];
+ }
+
+ @Override
+ public double getDurabilityForDisplay(ItemStack stack) {
+ return 0;
+ }
+
+ @Override
+ public boolean showDurabilityBar(ItemStack stack) {
+ return false;
+ }
+}