aboutsummaryrefslogtreecommitdiff
path: root/src/Java/gtPlusPlus/core/item
diff options
context:
space:
mode:
Diffstat (limited to 'src/Java/gtPlusPlus/core/item')
-rw-r--r--src/Java/gtPlusPlus/core/item/ModItems.java9
-rw-r--r--src/Java/gtPlusPlus/core/item/general/books/ItemBaseBook.java79
2 files changed, 85 insertions, 3 deletions
diff --git a/src/Java/gtPlusPlus/core/item/ModItems.java b/src/Java/gtPlusPlus/core/item/ModItems.java
index 3cea650970..0f25481831 100644
--- a/src/Java/gtPlusPlus/core/item/ModItems.java
+++ b/src/Java/gtPlusPlus/core/item/ModItems.java
@@ -24,6 +24,7 @@ import gtPlusPlus.core.item.bauble.ModularBauble;
import gtPlusPlus.core.item.chemistry.CoalTar;
import gtPlusPlus.core.item.effects.RarityUncommon;
import gtPlusPlus.core.item.general.*;
+import gtPlusPlus.core.item.general.books.ItemBaseBook;
import gtPlusPlus.core.item.general.chassis.*;
import gtPlusPlus.core.item.general.throwables.ItemHydrofluoricAcidPotion;
import gtPlusPlus.core.item.general.throwables.ItemSulfuricAcidPotion;
@@ -43,6 +44,7 @@ import gtPlusPlus.core.util.debug.DEBUG_INIT;
import gtPlusPlus.core.util.fluid.FluidUtils;
import gtPlusPlus.core.util.item.ItemUtils;
import gtPlusPlus.core.util.materials.MaterialUtils;
+import net.minecraft.block.Block;
import net.minecraft.item.*;
import net.minecraft.item.Item.ToolMaterial;
import net.minecraft.util.EnumChatFormatting;
@@ -50,6 +52,7 @@ import net.minecraftforge.common.util.EnumHelper;
import net.minecraftforge.fluids.Fluid;
public final class ModItems {
+
public static ToolMaterial STABALLOY = EnumHelper.addToolMaterial("Staballoy", 3, 2500, 7, 1.0F, 18);
public static Item ZZZ_Empty;
@@ -236,9 +239,7 @@ public final class ModItems {
public static Item itemHydrofluoricPotion;
public static Item itemModularBauble;
-
-
-
+ public static Item itemCustomBook;
public static final void init(){
@@ -306,6 +307,8 @@ public final class ModItems {
itemHydrofluoricPotion = new ItemHydrofluoricAcidPotion("itemHydrofluoricPotion", "Thowable Vial of Hydrofluoric Acid", "They won't see this coming, nor anything after!").setTextureName(CORE.MODID + ":itemPotion");
//Start meta Item Generation
ItemsFoods.load();
+
+ itemCustomBook = new ItemBaseBook();
try{
diff --git a/src/Java/gtPlusPlus/core/item/general/books/ItemBaseBook.java b/src/Java/gtPlusPlus/core/item/general/books/ItemBaseBook.java
new file mode 100644
index 0000000000..c7bf2e821e
--- /dev/null
+++ b/src/Java/gtPlusPlus/core/item/general/books/ItemBaseBook.java
@@ -0,0 +1,79 @@
+package gtPlusPlus.core.item.general.books;
+
+import java.util.List;
+
+import gtPlusPlus.core.creative.AddToCreativeTab;
+import gtPlusPlus.core.lib.CORE;
+import gtPlusPlus.core.util.Utils;
+import gtPlusPlus.core.util.nbt.NBTUtils;
+import net.minecraft.creativetab.CreativeTabs;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.item.Item;
+import net.minecraft.item.ItemStack;
+import net.minecraft.item.ItemWritableBook;
+
+public class ItemBaseBook extends ItemWritableBook{
+
+ public ItemBaseBook(){
+ this.setCreativeTab(AddToCreativeTab.tabMisc);
+ this.setMaxStackSize(1);
+ this.setNoRepair();
+ this.setMaxDamage(Short.MAX_VALUE);
+ this.setTextureName(CORE.MODID+":"+"itemBook");
+ }
+
+ @Override
+ public void getSubItems(Item item, CreativeTabs tab, List list) {
+ for (int i = 0; i < Utils.getBookCount(); i ++) {
+ list.add(new ItemStack(item, 1, i));
+ }
+ }
+
+ @Override
+ public String getItemStackDisplayName(final ItemStack tItem) {
+ if (NBTUtils.hasKey(tItem, "mMeta")){
+ return NBTUtils.getBookTitle(tItem);
+ }
+ return "GT++ Storybook";
+ }
+
+ @Override
+ public boolean isDamageable() {
+ return false;
+ }
+
+ @Override
+ public void addInformation(ItemStack p_77624_1_, EntityPlayer p_77624_2_, List p_77624_3_, boolean p_77624_4_) {
+ // TODO Auto-generated method stub
+ super.addInformation(p_77624_1_, p_77624_2_, p_77624_3_, p_77624_4_);
+ }
+
+ @Override
+ public boolean isRepairable() {
+ return false;
+ }
+
+ @Override
+ public int getDamage(ItemStack stack) {
+ if (NBTUtils.hasKey(stack, "mMeta")){
+ return NBTUtils.getInteger(stack, "mMeta");
+ }
+ return 0;
+ }
+
+ @Override
+ public int getDisplayDamage(ItemStack stack) {
+ return 0;
+ }
+
+ @Override
+ public boolean showDurabilityBar(ItemStack stack) {
+ return false;
+ }
+
+ @Override
+ public void setDamage(ItemStack stack, int damage) {
+ NBTUtils.setInteger(stack, "mMeta", damage);
+ }
+
+}