diff options
Diffstat (limited to 'src/main/java/common')
-rw-r--r-- | src/main/java/common/reactorItem/AbstractReactorItem.java | 29 | ||||
-rw-r--r-- | src/main/java/common/reactorItem/ReactorItem.java | 48 |
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; + } +} |