aboutsummaryrefslogtreecommitdiff
path: root/src/Java/gtPlusPlus
diff options
context:
space:
mode:
Diffstat (limited to 'src/Java/gtPlusPlus')
-rw-r--r--src/Java/gtPlusPlus/GTplusplus.java1
-rw-r--r--src/Java/gtPlusPlus/core/block/base/BasicBlock.java4
-rw-r--r--src/Java/gtPlusPlus/core/fluids/GenericFluid.java8
-rw-r--r--src/Java/gtPlusPlus/core/item/ModItems.java9
-rw-r--r--src/Java/gtPlusPlus/core/proxy/ClientProxy.java1
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/HANDLER_GT.java24
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/api/items/Gregtech_MetaTool.java289
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/api/recipe/ProcessingSkookumChoocherToolRecipes.java7
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/common/items/MetaGeneratedGregtechTools.java11
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/common/tools/TOOL_Gregtech_Base.java5
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/common/tools/TOOL_Gregtech_Choocher.java30
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/loaders/ProcessingToolHeadChoocher.java55
12 files changed, 123 insertions, 321 deletions
diff --git a/src/Java/gtPlusPlus/GTplusplus.java b/src/Java/gtPlusPlus/GTplusplus.java
index 59f7c4e889..e08952b77c 100644
--- a/src/Java/gtPlusPlus/GTplusplus.java
+++ b/src/Java/gtPlusPlus/GTplusplus.java
@@ -120,6 +120,7 @@ implements ActionListener
public void preInit(FMLPreInitializationEvent event)
{
Utils.LOG_INFO("Loading "+CORE.name+" V"+CORE.VERSION);
+ //Utils.LOG_INFO("Test String for Debug: "+TexturesGtTools.SKOOKUM_CHOOCHER.getTextureFile().getResourcePath());
Utils.LOG_INFO("Latest is V"+CORE.MASTER_VERSION+". Updated? "+Utils.isModUpToDate());
FirstCall();
FMLCommonHandler.instance().bus().register(new LoginEventHandler());
diff --git a/src/Java/gtPlusPlus/core/block/base/BasicBlock.java b/src/Java/gtPlusPlus/core/block/base/BasicBlock.java
index cd879167ba..c95f37d9c5 100644
--- a/src/Java/gtPlusPlus/core/block/base/BasicBlock.java
+++ b/src/Java/gtPlusPlus/core/block/base/BasicBlock.java
@@ -8,7 +8,7 @@ import net.minecraft.block.material.Material;
public class BasicBlock extends Block {
- public BasicBlock(String unlocalizedName, Material material) {
+ public BasicBlock(final String unlocalizedName, final Material material) {
super(material);
this.setBlockName(Utils.sanitizeString(unlocalizedName));
this.setBlockTextureName(CORE.MODID + ":" + unlocalizedName);
@@ -28,7 +28,7 @@ public class BasicBlock extends Block {
private String TEXTURE_NAME;
private String HARVEST_TOOL;
private SoundType soundOfBlock;
- private BlockTypes (String textureName, String harvestTool, SoundType blockSound)
+ private BlockTypes (final String textureName, final String harvestTool, final SoundType blockSound)
{
this.TEXTURE_NAME = textureName;
this.HARVEST_TOOL = harvestTool;
diff --git a/src/Java/gtPlusPlus/core/fluids/GenericFluid.java b/src/Java/gtPlusPlus/core/fluids/GenericFluid.java
index b0278fa0d2..1780cb8577 100644
--- a/src/Java/gtPlusPlus/core/fluids/GenericFluid.java
+++ b/src/Java/gtPlusPlus/core/fluids/GenericFluid.java
@@ -34,7 +34,10 @@ public class GenericFluid extends Fluid{
}
public GenericFluid(Material fluidMaterial, int luminosity, int density, int temperature, int viscosity, boolean isGas) {
+
super(fluidMaterial.getUnlocalizedName());
+ //IC2_ItemFluidCell fullFluidCell = emptyCell.fill(emptyCell, FluidUtils.getFluidStack(getUnlocalizedName(), 1), true);
+
fluidFactory = this;
this.rgba = fluidMaterial.getRGBA();
this.fluidName = fluidMaterial.getUnlocalizedName();
@@ -47,7 +50,10 @@ public class GenericFluid extends Fluid{
FluidRegistry.registerFluid(fluidFactory);
blockFactory = new BlockFluidBase(fluidFactory, fluidMaterial).setBlockName("fluidblock"+fluidName);
GameRegistry.registerBlock(blockFactory, ItemBlockFluid.class, blockFactory.getUnlocalizedName().substring(5));
-
+ //IC2_ItemFluidCell emptyCell = new IC2_ItemFluidCell(fluidName);
+ /*if (aFullContainer != null && aEmptyContainer != null && !FluidContainerRegistry.registerFluidContainer(new FluidStack(rFluid, aFluidAmount), aFullContainer, aEmptyContainer)) {
+ GT_Values.RA.addFluidCannerRecipe(aFullContainer, container(aFullContainer, false), null, new FluidStack(rFluid, aFluidAmount));
+ }*/
//fluidFactory.setUnlocalizedName(blockFactory.getUnlocalizedName());
}
diff --git a/src/Java/gtPlusPlus/core/item/ModItems.java b/src/Java/gtPlusPlus/core/item/ModItems.java
index 5cfeb83425..0950a9a4c0 100644
--- a/src/Java/gtPlusPlus/core/item/ModItems.java
+++ b/src/Java/gtPlusPlus/core/item/ModItems.java
@@ -34,6 +34,7 @@ import gtPlusPlus.core.util.item.UtilsItems;
import net.minecraft.item.Item;
import net.minecraft.item.Item.ToolMaterial;
import net.minecraft.item.ItemFood;
+import net.minecraft.item.ItemStack;
import net.minecraftforge.common.util.EnumHelper;
import cpw.mods.fml.common.registry.GameRegistry;
public final class ModItems {
@@ -107,7 +108,9 @@ public final class ModItems {
public static Item itemPersonalCloakingDeviceCharged;
public static Item itemPersonalHealingDevice;
- public static MultiPickaxeBase MP_GTMATERIAL;
+ public static MultiPickaxeBase MP_GTMATERIAL;
+
+ public static ItemStack FluidCell;
public static BaseItemBackpack backpack_Red;
public static BaseItemBackpack backpack_Green;
@@ -398,6 +401,10 @@ public final class ModItems {
//GameRegistry.registerItem(FuelRod_Thorium, "itemFuelRod_Thorium");
//GameRegistry.registerItem(FuelRod_Uranium, "itemFuelRod_Uranium");
//GameRegistry.registerItem(FuelRod_Plutonium, "itemFuelRod_Plutonium");
+
+ //FluidCell = new ItemStack(new IC2_ItemFluidCell("itemGT++FluidCell"));
+
+
}
else {
Utils.LOG_WARNING("IndustrialCraft2 not Found - Skipping Resources.");
diff --git a/src/Java/gtPlusPlus/core/proxy/ClientProxy.java b/src/Java/gtPlusPlus/core/proxy/ClientProxy.java
index 3019a71266..3b3c257ffa 100644
--- a/src/Java/gtPlusPlus/core/proxy/ClientProxy.java
+++ b/src/Java/gtPlusPlus/core/proxy/ClientProxy.java
@@ -33,6 +33,7 @@ public class ClientProxy extends CommonProxy{
@Override
public void registerRenderThings(){
+ //MinecraftForgeClient.registerItemRenderer(ModItems.FluidCell.getItem(), new RenderLiquidCell());
//RenderingRegistry.registerEntityRenderingHandler(EntityBloodSteelMob.class, new RenderBloodSteelMob(new ModelBloodSteelMob(), 0));
//RenderingRegistry.registerEntityRenderingHandler(EntityBloodSteelHostileMob.class, new RenderBloodSteelMobHostile(new ModelBloodSteelMob(), 0));
//RenderingRegistry.registerEntityRenderingHandler(EntityGrenade.class, new RenderSnowball(ModItems.tutGrenade));
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/HANDLER_GT.java b/src/Java/gtPlusPlus/xmod/gregtech/HANDLER_GT.java
index 4dafe394b8..0808eab6b3 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/HANDLER_GT.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/HANDLER_GT.java
@@ -4,37 +4,39 @@ import gregtech.api.util.GT_Config;
import gtPlusPlus.xmod.gregtech.api.enums.GregtechOrePrefixes.GT_Materials;
import gtPlusPlus.xmod.gregtech.common.blocks.fluid.GregtechFluidHandler;
import gtPlusPlus.xmod.gregtech.common.items.MetaGeneratedGregtechItems;
+import gtPlusPlus.xmod.gregtech.common.items.MetaGeneratedGregtechTools;
+import gtPlusPlus.xmod.gregtech.loaders.ProcessingToolHeadChoocher;
import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechConduits;
public class HANDLER_GT {
-
+
public static GT_Config mMaterialProperties = null;
public static void preInit(){
new MetaGeneratedGregtechItems();
if (mMaterialProperties != null){
GT_Materials.init(mMaterialProperties);
- GregtechFluidHandler.run();
- //new Processing_Ingot1();
- //new Processing_Plate1();
- //new Processing_Block();
}
+ GregtechFluidHandler.run();
+ //new Processing_Ingot1();
+ //new Processing_Plate1();
+ //new Processing_Block();
//new Processing_HotIngots();
}
-
+
public static void init(){
-
+
//Add Custom Pipes, Wires and Cables.
GregtechConduits.run();
- //new ProcessingToolHeadChoocher();
- //new MetaGeneratedGregtechTools();
+ new MetaGeneratedGregtechTools();
+ new ProcessingToolHeadChoocher().run();
/*if (Meta_GT_Proxy.mSortToTheEnd) {
new GT_ItemIterator().run();
Meta_GT_Proxy.registerUnificationEntries();
new GT_FuelLoader().run();
}*/
}
-
+
public static void postInit(){
/*Meta_GT_Proxy.activateOreDictHandler();
if (Meta_GT_Proxy.mSortToTheEnd) {
@@ -45,5 +47,5 @@ public class HANDLER_GT {
new GT_FuelLoader().run();
}*/
}
-
+
}
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/api/items/Gregtech_MetaTool.java b/src/Java/gtPlusPlus/xmod/gregtech/api/items/Gregtech_MetaTool.java
index 20163eecb4..646d7314f5 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/api/items/Gregtech_MetaTool.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/api/items/Gregtech_MetaTool.java
@@ -1,28 +1,22 @@
package gtPlusPlus.xmod.gregtech.api.items;
import static gregtech.api.enums.GT_Values.MOD_ID_RC;
-import gregtech.api.GregTech_API;
import gregtech.api.enchants.Enchantment_Radioactivity;
import gregtech.api.enums.Materials;
-import gregtech.api.enums.TC_Aspects.TC_AspectStack;
import gregtech.api.interfaces.IDamagableItem;
-import gregtech.api.util.GT_LanguageManager;
+import gregtech.api.interfaces.IToolStats;
+import gregtech.api.items.GT_MetaGenerated_Tool;
import gregtech.api.util.GT_ModHandler;
-import gregtech.api.util.GT_OreDictUnificator;
import gregtech.api.util.GT_Utility;
import gtPlusPlus.core.creative.AddToCreativeTab;
-import gtPlusPlus.xmod.gregtech.api.interfaces.internal.Interface_ToolStats;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map.Entry;
-import java.util.Random;
import mods.railcraft.api.core.items.IToolCrowbar;
import net.minecraft.block.Block;
-import net.minecraft.client.renderer.texture.IIconRegister;
-import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.enchantment.Enchantment;
import net.minecraft.enchantment.EnchantmentHelper;
import net.minecraft.entity.Entity;
@@ -30,29 +24,24 @@ import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.SharedMonsterAttributes;
import net.minecraft.entity.item.EntityMinecart;
import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.item.EnumAction;
-import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.potion.Potion;
import net.minecraft.stats.AchievementList;
import net.minecraft.stats.StatList;
import net.minecraft.util.EnumChatFormatting;
-import net.minecraft.util.IIcon;
import net.minecraft.util.MathHelper;
import net.minecraft.world.World;
import net.minecraftforge.event.world.BlockEvent;
import buildcraft.api.tools.IToolWrench;
import cpw.mods.fml.common.Optional;
-import cpw.mods.fml.relauncher.Side;
-import cpw.mods.fml.relauncher.SideOnly;
/**
* This is an example on how you can create a Tool ItemStack, in this case a Bismuth Wrench:
* GT_MetaGenerated_Tool.sInstances.get("gt.metatool.01").getToolWithStats(16, 1, Materials.Bismuth, Materials.Bismuth, null);
*/
@Optional.InterfaceList(value = {@Optional.Interface(iface = "mods.railcraft.api.core.items.IToolCrowbar", modid = MOD_ID_RC), @Optional.Interface(iface = "buildcraft.api.tools.IToolWrench", modid = "BuildCraft")})
-public abstract class Gregtech_MetaTool extends Gregtech_MetaItem_Base implements IDamagableItem, IToolCrowbar, IToolWrench {
+public abstract class Gregtech_MetaTool extends GT_MetaGenerated_Tool implements IDamagableItem, IToolCrowbar, IToolWrench {
/**
* All instances of this Item Class are listed here.
* This gets used to register the Renderer to all Items of this Type, if useStandardMetaItemRenderer() returns true.
@@ -63,7 +52,7 @@ public abstract class Gregtech_MetaTool extends Gregtech_MetaItem_Base implement
/* ---------- CONSTRUCTOR AND MEMBER VARIABLES ---------- */
- public final HashMap<Short, Interface_ToolStats> mToolStats = new HashMap<Short, Interface_ToolStats>();
+ public final HashMap<Short, IToolStats> mToolStats = new HashMap<Short, IToolStats>();
/**
* Creates the Item using these Parameters.
@@ -78,140 +67,19 @@ public abstract class Gregtech_MetaTool extends Gregtech_MetaItem_Base implement
sInstances.put(getUnlocalizedName(), this);
}
- /* ---------- FOR ADDING CUSTOM ITEMS INTO THE REMAINING 766 RANGE ---------- */
-
- public static final Materials getPrimaryMaterial(ItemStack aStack) {
- NBTTagCompound aNBT = aStack.getTagCompound();
- if (aNBT != null) {
- aNBT = aNBT.getCompoundTag("GT.ToolStats");
- if (aNBT != null) return Materials.getRealMaterial(aNBT.getString("PrimaryMaterial"));
- }
- return Materials._NULL;
- }
-
- public static final Materials getSecondaryMaterial(ItemStack aStack) {
- NBTTagCompound aNBT = aStack.getTagCompound();
- if (aNBT != null) {
- aNBT = aNBT.getCompoundTag("GT.ToolStats");
- if (aNBT != null) return Materials.getRealMaterial(aNBT.getString("SecondaryMaterial"));
- }
- return Materials._NULL;
- }
-
- /* ---------- INTERNAL OVERRIDES ---------- */
-
- public static final long getToolMaxDamage(ItemStack aStack) {
- NBTTagCompound aNBT = aStack.getTagCompound();
- if (aNBT != null) {
- aNBT = aNBT.getCompoundTag("GT.ToolStats");
- if (aNBT != null) return aNBT.getLong("MaxDamage");
- }
- return 0;
- }
-
- public static final long getToolDamage(ItemStack aStack) {
- NBTTagCompound aNBT = aStack.getTagCompound();
- if (aNBT != null) {
- aNBT = aNBT.getCompoundTag("GT.ToolStats");
- if (aNBT != null) return aNBT.getLong("Damage");
- }
- return 0;
- }
-
- public static final boolean setToolDamage(ItemStack aStack, long aDamage) {
- NBTTagCompound aNBT = aStack.getTagCompound();
- if (aNBT != null) {
- aNBT = aNBT.getCompoundTag("GT.ToolStats");
- if (aNBT != null) {
- aNBT.setLong("Damage", aDamage);
- return true;
- }
- }
- return false;
- }
-
- /**
- * This adds a Custom Item to the ending Range.
- *
- * @param aID The Id of the assigned Tool Class [0 - 32765] (only even Numbers allowed! Uneven ID's are empty electric Items)
- * @param aEnglish The Default Localized Name of the created Item
- * @param aToolTip The Default ToolTip of the created Item, you can also insert null for having no ToolTip
- * @param aToolStats The Food Value of this Item. Can be null as well.
- * @param aOreDictNamesAndAspects The OreDict Names you want to give the Item. Also used to assign Thaumcraft Aspects.
- * @return An ItemStack containing the newly created Item, but without specific Stats.
- */
- public final ItemStack addTool(int aID, String aEnglish, String aToolTip, Interface_ToolStats aToolStats, Object... aOreDictNamesAndAspects) {
- if (aToolTip == null) aToolTip = "";
- if (aID >= 0 && aID < 32766 && aID % 2 == 0) {
- GT_LanguageManager.addStringLocalization(getUnlocalizedName() + "." + aID + ".name", aEnglish);
- GT_LanguageManager.addStringLocalization(getUnlocalizedName() + "." + aID + ".tooltip", aToolTip);
- GT_LanguageManager.addStringLocalization(getUnlocalizedName() + "." + (aID + 1) + ".name", aEnglish + " (Empty)");
- GT_LanguageManager.addStringLocalization(getUnlocalizedName() + "." + (aID + 1) + ".tooltip", "You need to recharge it");
- mToolStats.put((short) aID, aToolStats);
- mToolStats.put((short) (aID + 1), aToolStats);
- aToolStats.onStatsAddedToTool(this, aID);
- ItemStack rStack = new ItemStack(this, 1, aID);
- List<TC_AspectStack> tAspects = new ArrayList<TC_AspectStack>();
- for (Object tOreDictNameOrAspect : aOreDictNamesAndAspects) {
- if (tOreDictNameOrAspect instanceof TC_AspectStack)
- ((TC_AspectStack) tOreDictNameOrAspect).addToAspectList(tAspects);
- else
- GT_OreDictUnificator.registerOre(tOreDictNameOrAspect, rStack);
- }
- if (GregTech_API.sThaumcraftCompat != null)
- GregTech_API.sThaumcraftCompat.registerThaumcraftAspectsToItem(rStack, tAspects, false);
- return rStack;
- }
- return null;
- }
-
- /**
- * This Function gets an ItemStack Version of this Tool
- *
- * @param aToolID the ID of the Tool Class
- * @param aAmount Amount of Items (well normally you only need 1)
- * @param aPrimaryMaterial Primary Material of this Tool
- * @param aSecondaryMaterial Secondary (Rod/Handle) Material of this Tool
- * @param aElectricArray The Electric Stats of this Tool (or null if not electric)
- */
- public final ItemStack getToolWithStats(int aToolID, int aAmount, Materials aPrimaryMaterial, Materials aSecondaryMaterial, long[] aElectricArray) {
- ItemStack rStack = new ItemStack(this, aAmount, aToolID);
- Interface_ToolStats tToolStats = getToolStats(rStack);
- if (tToolStats != null) {
- NBTTagCompound tMainNBT = new NBTTagCompound(), tToolNBT = new NBTTagCompound();
- if (aPrimaryMaterial != null) {
- tToolNBT.setString("PrimaryMaterial", aPrimaryMaterial.toString());
- tToolNBT.setLong("MaxDamage", 100L * (long) (aPrimaryMaterial.mDurability * tToolStats.getMaxDurabilityMultiplier()));
- }
- if (aSecondaryMaterial != null) tToolNBT.setString("SecondaryMaterial", aSecondaryMaterial.toString());
-
- if (aElectricArray != null) {
- tToolNBT.setBoolean("Electric", true);
- tToolNBT.setLong("MaxCharge", aElectricArray[0]);
- tToolNBT.setLong("Voltage", aElectricArray[1]);
- tToolNBT.setLong("Tier", aElectricArray[2]);
- tToolNBT.setLong("SpecialData", aElectricArray[3]);
- }
-
- tMainNBT.setTag("GT.ToolStats", tToolNBT);
- rStack.setTagCompound(tMainNBT);
- }
- isItemStackUsable(rStack);
- return rStack;
- }
-
/**
* Called by the Block Harvesting Event within the GT_Proxy
*/
+ @Override
public void onHarvestBlockEvent(ArrayList<ItemStack> aDrops, ItemStack aStack, EntityPlayer aPlayer, Block aBlock, int aX, int aY, int aZ, byte aMetaData, int aFortune, boolean aSilkTouch, BlockEvent.HarvestDropsEvent aEvent) {
- Interface_ToolStats tStats = getToolStats(aStack);
+ IToolStats tStats = getToolStats(aStack);
if (isItemStackUsable(aStack) && getDigSpeed(aStack, aBlock, aMetaData) > 0.0F)
doDamage(aStack, tStats.convertBlockDrops(aDrops, aStack, aPlayer, aBlock, aX, aY, aZ, aMetaData, aFortune, aSilkTouch, aEvent) * tStats.getToolDamagePerDropConversion());
}
@Override
public boolean onLeftClickEntity(ItemStack aStack, EntityPlayer aPlayer, Entity aEntity) {
- Interface_ToolStats tStats = getToolStats(aStack);
+ IToolStats tStats = getToolStats(aStack);
if (tStats == null || !isItemStackUsable(aStack)) return true;
GT_Utility.doSoundAtClient(tStats.getEntityHitSound(), 1, 1.0F);
if (super.onLeftClickEntity(aStack, aPlayer, aEntity)) return true;
@@ -252,50 +120,16 @@ public abstract class Gregtech_MetaTool extends Gregtech_MetaItem_Base implement
@Override
public ItemStack onItemRightClick(ItemStack aStack, World aWorld, EntityPlayer aPlayer) {
- Interface_ToolStats tStats = getToolStats(aStack);
+ IToolStats tStats = getToolStats(aStack);
if (tStats != null && tStats.canBlock()) aPlayer.setItemInUse(aStack, 72000);
return super.onItemRightClick(aStack, aWorld, aPlayer);
}
@Override
- public final int getMaxItemUseDuration(ItemStack aStack) {
- return 72000;
- }
-
- @Override
- public final EnumAction getItemUseAction(ItemStack aStack) {
- Interface_ToolStats tStats = getToolStats(aStack);
- if (tStats != null && tStats.canBlock()) return EnumAction.block;
- return EnumAction.none;
- }
-
- @Override
- @SideOnly(Side.CLIENT)
- public final void getSubItems(Item var1, CreativeTabs aCreativeTab, List aList) {
- for (int i = 0; i < 32766; i += 2)
- if (getToolStats(new ItemStack(this, 1, i)) != null) {
- ItemStack tStack = new ItemStack(this, 1, i);
- isItemStackUsable(tStack);
- aList.add(tStack);
- }
- }
-
- @Override
- @SideOnly(Side.CLIENT)
- public final void registerIcons(IIconRegister aIconRegister) {
- //
- }
-
- @Override
- public final IIcon getIconFromDamage(int aMetaData) {
- return null;
- }
-
- @Override
public void addAdditionalToolTips(List aList, ItemStack aStack) {
long tMaxDamage = getToolMaxDamage(aStack);
Materials tMaterial = getPrimaryMaterial(aStack);
- Interface_ToolStats tStats = getToolStats(aStack);
+ IToolStats tStats = getToolStats(aStack);
int tOffset = getElectricStats(aStack) != null ? 2 : 1;
if (tStats != null) {
String name = aStack.getUnlocalizedName();
@@ -332,93 +166,35 @@ public abstract class Gregtech_MetaTool extends Gregtech_MetaItem_Base implement
return null;
}
+ @Override
public float getToolCombatDamage(ItemStack aStack) {
- Interface_ToolStats tStats = getToolStats(aStack);
+ IToolStats tStats = getToolStats(aStack);
if (tStats == null) return 0;
return tStats.getBaseDamage() + getPrimaryMaterial(aStack).mToolQuality;
}
@Override
- public final boolean doDamageToItem(ItemStack aStack, int aVanillaDamage) {
- return doDamage(aStack, aVanillaDamage * 100);
- }
-
- public final boolean doDamage(ItemStack aStack, long aAmount) {
- if (!isItemStackUsable(aStack)) return false;
- Long[] tElectric = getElectricStats(aStack);
- if (tElectric == null) {
- long tNewDamage = getToolDamage(aStack) + aAmount;
- setToolDamage(aStack, tNewDamage);
- if (tNewDamage >= getToolMaxDamage(aStack)) {
- Interface_ToolStats tStats = getToolStats(aStack);
- if (tStats == null || GT_Utility.setStack(aStack, tStats.getBrokenItem(aStack)) == null) {
- if (tStats != null) /*GT_Utility.doSoundAtClient(tStats.getBreakingSound(), 1, 1.0F);*/
- if (aStack.stackSize > 0) aStack.stackSize--;
-
- }
- }
- return true;
- }
- if (use(aStack, (int) aAmount, null)) {
- if (new Random().nextInt(25) == 0) {
- long tNewDamage = getToolDamage(aStack) + aAmount;
- setToolDamage(aStack, tNewDamage);
- if (tNewDamage >= getToolMaxDamage(aStack)) {
- Interface_ToolStats tStats = getToolStats(aStack);
- if (tStats == null || GT_Utility.setStack(aStack, tStats.getBrokenItem(aStack)) == null) {
- if (tStats != null) /*GT_Utility.doSoundAtClient(tStats.getBreakingSound(), 1, 1.0F);*/
- if (aStack.stackSize > 0) aStack.stackSize--;
- }
- }
- }
- return true;
- }
- return false;
- }
-
- @Override
public float getDigSpeed(ItemStack aStack, Block aBlock, int aMetaData) {
if (!isItemStackUsable(aStack)) return 0.0F;
- Interface_ToolStats tStats = getToolStats(aStack);
+ IToolStats tStats = getToolStats(aStack);
if (tStats == null || Math.max(0, getHarvestLevel(aStack, "")) < aBlock.getHarvestLevel(aMetaData)) return 0.0F;
return tStats.isMinableBlock(aBlock, (byte) aMetaData) ? Math.max(Float.MIN_NORMAL, tStats.getSpeedMultiplier() * getPrimaryMaterial(aStack).mToolSpeed) : 0.0F;
}
@Override
- public final boolean canHarvestBlock(Block aBlock, ItemStack aStack) {
- return getDigSpeed(aStack, aBlock, (byte) 0) > 0.0F;
- }
-
- @Override
- public final int getHarvestLevel(ItemStack aStack, String aToolClass) {
- Interface_ToolStats tStats = getToolStats(aStack);
- return tStats == null ? -1 : tStats.getBaseQuality() + getPrimaryMaterial(aStack).mToolQuality;
- }
-
- @Override
public boolean onBlockDestroyed(ItemStack aStack, World aWorld, Block aBlock, int aX, int aY, int aZ, EntityLivingBase aPlayer) {
if (!isItemStackUsable(aStack)) return false;
- Interface_ToolStats tStats = getToolStats(aStack);
+ IToolStats tStats = getToolStats(aStack);
if (tStats == null) return false;
GT_Utility.doSoundAtClient(tStats.getMiningSound(), 1, 1.0F);
doDamage(aStack, (int) Math.max(1, aBlock.getBlockHardness(aWorld, aX, aY, aZ) * tStats.getToolDamagePerBlockBreak()));
return getDigSpeed(aStack, aBlock, aWorld.getBlockMetadata(aX, aY, aZ)) > 0.0F;
}
- @Override
- public final ItemStack getContainerItem(ItemStack aStack) {
- return getContainerItem(aStack, true);
- }
-
- @Override
- public final boolean hasContainerItem(ItemStack aStack) {
- return getContainerItem(aStack, false) != null;
- }
-
private ItemStack getContainerItem(ItemStack aStack, boolean playSound) {
if (!isItemStackUsable(aStack)) return null;
aStack = GT_Utility.copyAmount(1, aStack);
- Interface_ToolStats tStats = getToolStats(aStack);
+ IToolStats tStats = getToolStats(aStack);
if (tStats == null) return null;
doDamage(aStack, tStats.getToolDamagePerContainerCraft());
aStack = aStack.stackSize > 0 ? aStack : null;
@@ -429,35 +205,36 @@ public abstract class Gregtech_MetaTool extends Gregtech_MetaItem_Base implement
return aStack;
}
- public Interface_ToolStats getToolStats(ItemStack aStack) {
+ @Override
+ public IToolStats getToolStats(ItemStack aStack) {
isItemStackUsable(aStack);
return getToolStatsInternal(aStack);
}
- private Interface_ToolStats getToolStatsInternal(ItemStack aStack) {
+ private IToolStats getToolStatsInternal(ItemStack aStack) {
return aStack == null ? null : mToolStats.get((short) aStack.getItemDamage());
}
@Override
public boolean canWhack(EntityPlayer aPlayer, ItemStack aStack, int aX, int aY, int aZ) {
if (!isItemStackUsable(aStack)) return false;
- Interface_ToolStats tStats = getToolStats(aStack);
+ IToolStats tStats = getToolStats(aStack);
return tStats != null && tStats.isCrowbar();
}
@Override
public void onWhack(EntityPlayer aPlayer, ItemStack aStack, int aX, int aY, int aZ) {
- Interface_ToolStats tStats = getToolStats(aStack);
+ IToolStats tStats = getToolStats(aStack);
if (tStats != null) doDamage(aStack, tStats.getToolDamagePerEntityAttack());
}
@Override
public boolean canWrench(EntityPlayer player, int x, int y, int z) {
- System.out.println("canWrench");
+ //System.out.println("canWrench");
if(player==null)return false;
if(player.getCurrentEquippedItem()==null)return false;
if (!isItemStackUsable(player.getCurrentEquippedItem())) return false;
- Interface_ToolStats tStats = getToolStats(player.getCurrentEquippedItem());
+ IToolStats tStats = getToolStats(player.getCurrentEquippedItem());
return tStats != null && tStats.isWrench();
}
@@ -465,61 +242,51 @@ public abstract class Gregtech_MetaTool extends Gregtech_MetaItem_Base implement
public void wrenchUsed(EntityPlayer player, int x, int y, int z) {
if(player==null)return;
if(player.getCurrentEquippedItem()==null)return;
- Interface_ToolStats tStats = getToolStats(player.getCurrentEquippedItem());
+ IToolStats tStats = getToolStats(player.getCurrentEquippedItem());
if (tStats != null) doDamage(player.getCurrentEquippedItem(), tStats.getToolDamagePerEntityAttack());
}
@Override
public boolean canLink(EntityPlayer aPlayer, ItemStack aStack, EntityMinecart cart) {
if (!isItemStackUsable(aStack)) return false;
- Interface_ToolStats tStats = getToolStats(aStack);
+ IToolStats tStats = getToolStats(aStack);
return tStats != null && tStats.isCrowbar();
}
@Override
public void onLink(EntityPlayer aPlayer, ItemStack aStack, EntityMinecart cart) {
- Interface_ToolStats tStats = getToolStats(aStack);
+ IToolStats tStats = getToolStats(aStack);
if (tStats != null) doDamage(aStack, tStats.getToolDamagePerEntityAttack());
}
@Override
public boolean canBoost(EntityPlayer aPlayer, ItemStack aStack, EntityMinecart cart) {
if (!isItemStackUsable(aStack)) return false;
- Interface_ToolStats tStats = getToolStats(aStack);
+ IToolStats tStats = getToolStats(aStack);
return tStats != null && tStats.isCrowbar();
}
@Override
public void onBoost(EntityPlayer aPlayer, ItemStack aStack, EntityMinecart cart) {
- Interface_ToolStats tStats = getToolStats(aStack);
+ IToolStats tStats = getToolStats(aStack);
if (tStats != null) doDamage(aStack, tStats.getToolDamagePerEntityAttack());
}
@Override
public void onCreated(ItemStack aStack, World aWorld, EntityPlayer aPlayer) {
- Interface_ToolStats tStats = getToolStats(aStack);
+ IToolStats tStats = getToolStats(aStack);
if (tStats != null && aPlayer != null) tStats.onToolCrafted(aStack, aPlayer);
super.onCreated(aStack, aWorld, aPlayer);
}
@Override
- public final boolean doesContainerItemLeaveCraftingGrid(ItemStack aStack) {
- return false;
- }
-
- @Override
- public final int getItemStackLimit(ItemStack aStack) {
- return 1;
- }
-
- @Override
public boolean isFull3D() {
return true;
}
@Override
public boolean isItemStackUsable(ItemStack aStack) {
- Interface_ToolStats tStats = getToolStatsInternal(aStack);
+ IToolStats tStats = getToolStatsInternal(aStack);
if (aStack.getItemDamage() % 2 == 1 || tStats == null) {
NBTTagCompound aNBT = aStack.getTagCompound();
if (aNBT != null) aNBT.removeTag("ench");
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/api/recipe/ProcessingSkookumChoocherToolRecipes.java b/src/Java/gtPlusPlus/xmod/gregtech/api/recipe/ProcessingSkookumChoocherToolRecipes.java
index f6c74ad12b..8f4fe09dbe 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/api/recipe/ProcessingSkookumChoocherToolRecipes.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/api/recipe/ProcessingSkookumChoocherToolRecipes.java
@@ -3,17 +3,18 @@ package gtPlusPlus.xmod.gregtech.api.recipe;
import gregtech.api.enums.Materials;
import gregtech.api.enums.OrePrefixes;
import gregtech.api.enums.ToolDictNames;
+import gregtech.api.interfaces.IOreRecipeRegistrator;
import gregtech.api.util.GT_ModHandler;
-import gregtech.common.items.GT_MetaGenerated_Tool_01;
+import gtPlusPlus.xmod.gregtech.common.items.MetaGeneratedGregtechTools;
import net.minecraft.item.ItemStack;
-public class ProcessingSkookumChoocherToolRecipes implements gregtech.api.interfaces.IOreRecipeRegistrator {
+public class ProcessingSkookumChoocherToolRecipes implements IOreRecipeRegistrator {
public ProcessingSkookumChoocherToolRecipes() {
//GregtechOrePrefixes.toolSkookumChoocher.add(this);
}
@Override
public void registerOre(OrePrefixes aPrefix, Materials aMaterial, String aOreDictName, String aModName, ItemStack aStack) {
- GT_ModHandler.addShapelessCraftingRecipe(GT_MetaGenerated_Tool_01.INSTANCE.getToolWithStats(32, 1, aMaterial, aMaterial, null), new Object[]{aOreDictName, OrePrefixes.stick.get(aMaterial), OrePrefixes.screw.get(aMaterial), ToolDictNames.craftingToolScrewdriver});
+ GT_ModHandler.addShapelessCraftingRecipe(MetaGeneratedGregtechTools.INSTANCE.getToolWithStats(7734, 1, aMaterial, aMaterial, null), new Object[]{aOreDictName, OrePrefixes.stick.get(aMaterial), OrePrefixes.screw.get(aMaterial), ToolDictNames.craftingToolScrewdriver});
}
}
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/items/MetaGeneratedGregtechTools.java b/src/Java/gtPlusPlus/xmod/gregtech/common/items/MetaGeneratedGregtechTools.java
index 2ee00f99d4..b63ea674ad 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/common/items/MetaGeneratedGregtechTools.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/common/items/MetaGeneratedGregtechTools.java
@@ -3,11 +3,12 @@ package gtPlusPlus.xmod.gregtech.common.items;
import gregtech.api.GregTech_API;
import gregtech.api.enums.TC_Aspects;
import gregtech.api.enums.ToolDictNames;
+import gregtech.api.items.GT_MetaGenerated_Tool;
+import gregtech.common.items.GT_MetaGenerated_Tool_01;
import gtPlusPlus.xmod.gregtech.api.enums.GregtechToolDictNames;
-import gtPlusPlus.xmod.gregtech.api.items.Gregtech_MetaTool;
import gtPlusPlus.xmod.gregtech.common.tools.TOOL_Gregtech_Choocher;
-public class MetaGeneratedGregtechTools extends Gregtech_MetaTool {
+public class MetaGeneratedGregtechTools extends GT_MetaGenerated_Tool {
public static final short TURBINE_SMALL = 10;
public static final short TURBINE = 12;
@@ -19,11 +20,11 @@ public class MetaGeneratedGregtechTools extends Gregtech_MetaTool {
public static final short SOFTHAMMER = 22;
public static final short WRENCH = 24;
- public static MetaGeneratedGregtechTools INSTANCE;
+ public static GT_MetaGenerated_Tool_01 INSTANCE;
public MetaGeneratedGregtechTools() {
- super("MU-metaitem.02");
- INSTANCE = this;
+ super("GT++_metatool");
+ INSTANCE = GT_MetaGenerated_Tool_01.INSTANCE;
GregTech_API.registerTool(addTool(7734, "Skookum Choocher", "Can Really Chooch. Does a Skookum job at Hammering and Wrenching stuff.", new TOOL_Gregtech_Choocher(), new Object[]{GregtechToolDictNames.craftingToolSkookumChoocher, ToolDictNames.craftingToolHardHammer, ToolDictNames.craftingToolWrench, new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.FABRICO, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.ORDO, 2L)}), GregTech_API.sWrenchList);
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/tools/TOOL_Gregtech_Base.java b/src/Java/gtPlusPlus/xmod/gregtech/common/tools/TOOL_Gregtech_Base.java
index 11e8a6b240..d46e777f47 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/common/tools/TOOL_Gregtech_Base.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/common/tools/TOOL_Gregtech_Base.java
@@ -2,7 +2,7 @@ package gtPlusPlus.xmod.gregtech.common.tools;
import gregtech.api.GregTech_API;
import gregtech.api.damagesources.GT_DamageSources;
-import gtPlusPlus.xmod.gregtech.api.interfaces.internal.Interface_ToolStats;
+import gregtech.api.interfaces.IToolStats;
import gtPlusPlus.xmod.gregtech.api.items.Gregtech_MetaTool;
import java.util.List;
@@ -20,7 +20,7 @@ import net.minecraft.util.IChatComponent;
import net.minecraftforge.event.world.BlockEvent;
public abstract class TOOL_Gregtech_Base
-implements Interface_ToolStats {
+implements IToolStats {
public static final Enchantment[] FORTUNE_ENCHANTMENT = {Enchantment.fortune};
public static final Enchantment[] LOOTING_ENCHANTMENT = {Enchantment.looting};
public static final Enchantment[] ZERO_ENCHANTMENTS = new Enchantment[0];
@@ -152,7 +152,6 @@ implements Interface_ToolStats {
aPlayer.triggerAchievement(AchievementList.buildWorkBench);
}
- @Override
public void onStatsAddedToTool(Gregtech_MetaTool aItem, int aID) {
}
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/tools/TOOL_Gregtech_Choocher.java b/src/Java/gtPlusPlus/xmod/gregtech/common/tools/TOOL_Gregtech_Choocher.java
index 42d8750f24..ce652bdda8 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/common/tools/TOOL_Gregtech_Choocher.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/common/tools/TOOL_Gregtech_Choocher.java
@@ -2,14 +2,14 @@ package gtPlusPlus.xmod.gregtech.common.tools;
import gregtech.GT_Mod;
import gregtech.api.GregTech_API;
-import gregtech.api.enums.OrePrefixes;
import gregtech.api.interfaces.IIconContainer;
+import gregtech.api.items.GT_MetaGenerated_Tool;
import gregtech.api.util.GT_Recipe;
import gregtech.api.util.GT_Utility;
-import gtPlusPlus.xmod.gregtech.api.enums.CustomGtTextures;
+import gregtech.common.items.behaviors.Behaviour_Prospecting;
+import gregtech.common.items.behaviors.Behaviour_Wrench;
import gtPlusPlus.xmod.gregtech.api.items.Gregtech_MetaTool;
-import gtPlusPlus.xmod.gregtech.api.items.types.ToolType_HardHammer;
-import gtPlusPlus.xmod.gregtech.api.items.types.ToolType_Wrench;
+import gtPlusPlus.xmod.gregtech.common.blocks.textures.TexturesGtTools;
import java.util.Arrays;
import java.util.List;
@@ -157,8 +157,10 @@ public class TOOL_Gregtech_Choocher
return null;
}
- public IIconContainer getIcon(boolean aIsToolHead, ItemStack aStack) {
- return aIsToolHead ? CustomGtTextures.ItemIcons.SKOOKUMCHOOCHER : Gregtech_MetaTool.getSecondaryMaterial(aStack).mIconSet.mTextures[OrePrefixes.stick.mTextureIndex];
+ @Override
+ public IIconContainer getIcon(boolean aIsToolHead, ItemStack aStack) {
+ //Utils.LOG_INFO("Texture: "+TexturesGtTools.SKOOKUM_CHOOCHER.getTextureFile());
+ return TexturesGtTools.SKOOKUM_CHOOCHER;
}
/* @Override
@@ -176,13 +178,13 @@ public class TOOL_Gregtech_Choocher
@Override
public short[] getRGBa(boolean aIsToolHead, ItemStack aStack) {
- return aIsToolHead ? Gregtech_MetaTool.getPrimaryMaterial(aStack).mRGBa : null;
+ return GT_MetaGenerated_Tool.getPrimaryMaterial(aStack).mRGBa;
}
@Override
public void onStatsAddedToTool(Gregtech_MetaTool aItem, int aID) {
- aItem.addItemBehavior(aID, new ToolType_Wrench(150));
- aItem.addItemBehavior(aID, new ToolType_HardHammer(1, 1250));
+ aItem.addItemBehavior(aID, new Behaviour_Wrench(150));
+ aItem.addItemBehavior(aID, new Behaviour_Prospecting(1, 1250));
}
@Override
@@ -200,4 +202,14 @@ public class TOOL_Gregtech_Choocher
public IChatComponent getDeathMessage(EntityLivingBase aPlayer, EntityLivingBase aEntity) {
return new ChatComponentText(EnumChatFormatting.RED + aEntity.getCommandSenderName() + EnumChatFormatting.WHITE + " has been Choochered by " + EnumChatFormatting.GREEN + aPlayer.getCommandSenderName() + EnumChatFormatting.WHITE);
}
+
+ @Override
+ public void onStatsAddedToTool(GT_MetaGenerated_Tool aItem, int aID) {
+
+ }
+
+ @Override
+ public boolean isGrafter() {
+ return false;
+ }
}
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/loaders/ProcessingToolHeadChoocher.java b/src/Java/gtPlusPlus/xmod/gregtech/loaders/ProcessingToolHeadChoocher.java
index b569f2a310..5b4d7be601 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/loaders/ProcessingToolHeadChoocher.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/loaders/ProcessingToolHeadChoocher.java
@@ -1,19 +1,17 @@
package gtPlusPlus.xmod.gregtech.loaders;
-import gregtech.api.enums.Dyes;
-import gregtech.api.enums.ItemList;
import gregtech.api.enums.Materials;
import gregtech.api.enums.OrePrefixes;
import gregtech.api.enums.SubTag;
import gregtech.api.util.GT_ModHandler;
+import gtPlusPlus.core.util.Utils;
import gtPlusPlus.xmod.gregtech.api.enums.GregtechOrePrefixes;
import gtPlusPlus.xmod.gregtech.api.enums.GregtechOrePrefixes.GT_Materials;
import gtPlusPlus.xmod.gregtech.api.interfaces.internal.Interface_OreRecipeRegistrator;
import gtPlusPlus.xmod.gregtech.common.items.MetaGeneratedGregtechTools;
-import net.minecraft.init.Blocks;
import net.minecraft.item.ItemStack;
-public class ProcessingToolHeadChoocher implements Interface_OreRecipeRegistrator {
+public class ProcessingToolHeadChoocher implements Interface_OreRecipeRegistrator, Runnable {
public ProcessingToolHeadChoocher() {
GregtechOrePrefixes.toolSkookumChoocher.add(this);
}
@@ -21,30 +19,10 @@ public class ProcessingToolHeadChoocher implements Interface_OreRecipeRegistrato
@Override
public void registerOre(GregtechOrePrefixes aPrefix, Materials aMaterial, String aOreDictName, String aModName, ItemStack aStack) {
if ((aMaterial != Materials.Stone) && (aMaterial != Materials.Flint)) {
- GT_ModHandler.addShapelessCraftingRecipe(MetaGeneratedGregtechTools.INSTANCE.getToolWithStats((aMaterial.contains(SubTag.BOUNCY)) || (aMaterial.contains(SubTag.WOOD)) ? 14 : 12, 1, aMaterial, aMaterial.mHandleMaterial, null), GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{aOreDictName, OrePrefixes.stick.get(aMaterial.mHandleMaterial)});
- GT_ModHandler.addCraftingRecipe(MetaGeneratedGregtechTools.INSTANCE.getToolWithStats((aMaterial.contains(SubTag.BOUNCY)) || (aMaterial.contains(SubTag.WOOD)) ? 14 : 12, 1, aMaterial, aMaterial.mHandleMaterial, null), GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"XX ", "XXS", "XX ", Character.valueOf('X'), aMaterial == Materials.Wood ? OrePrefixes.plank.get(Materials.Wood) : OrePrefixes.ingot.get(aMaterial), Character.valueOf('S'), OrePrefixes.stick.get(aMaterial.mHandleMaterial)});
- GT_ModHandler.addCraftingRecipe(MetaGeneratedGregtechTools.INSTANCE.getToolWithStats((aMaterial.contains(SubTag.BOUNCY)) || (aMaterial.contains(SubTag.WOOD)) ? 14 : 12, 1, aMaterial, aMaterial.mHandleMaterial, null), GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"XX ", "XXS", "XX ", Character.valueOf('X'), aMaterial == Materials.Wood ? OrePrefixes.plank.get(Materials.Wood) : OrePrefixes.gem.get(aMaterial), Character.valueOf('S'), OrePrefixes.stick.get(aMaterial.mHandleMaterial)});
if (aMaterial != Materials.Rubber)
- GT_ModHandler.addCraftingRecipe(MetaGeneratedGregtechTools.INSTANCE.getToolWithStats(44, 1, aMaterial, aMaterial, null), GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"xRR", " SR", "S f", Character.valueOf('S'), OrePrefixes.stick.get(aMaterial), Character.valueOf('R'), OrePrefixes.plate.get(Materials.Rubber)});
if ((!aMaterial.contains(SubTag.WOOD)) && (!aMaterial.contains(SubTag.BOUNCY)) && (!aMaterial.contains(SubTag.NO_SMASHING))) {
GT_ModHandler.addCraftingRecipe(MetaGeneratedGregtechTools.INSTANCE.getToolWithStats(16, 1, aMaterial, aMaterial, null), GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"IhI", "III", " I ", Character.valueOf('I'), OrePrefixes.ingot.get(aMaterial)});
- GT_ModHandler.addCraftingRecipe(MetaGeneratedGregtechTools.INSTANCE.getToolWithStats(20, 1, aMaterial, aMaterial, null), GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"hDS", "DSD", "SDf", Character.valueOf('S'), OrePrefixes.stick.get(aMaterial), Character.valueOf('D'), Dyes.dyeBlue});
- GT_ModHandler.addCraftingRecipe(MetaGeneratedGregtechTools.INSTANCE.getToolWithStats(22, 1, aMaterial, aMaterial.mHandleMaterial, null), GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{" fS", " Sh", "W ", Character.valueOf('S'), OrePrefixes.stick.get(aMaterial), Character.valueOf('W'), OrePrefixes.stick.get(aMaterial.mHandleMaterial)});
- GT_ModHandler.addCraftingRecipe(MetaGeneratedGregtechTools.INSTANCE.getToolWithStats(26, 1, aMaterial, aMaterial, null), GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"PfP", "hPd", "STS", Character.valueOf('S'), OrePrefixes.stick.get(aMaterial), Character.valueOf('P'), OrePrefixes.plate.get(aMaterial), Character.valueOf('T'), OrePrefixes.screw.get(aMaterial)});
- GT_ModHandler.addCraftingRecipe(MetaGeneratedGregtechTools.INSTANCE.getToolWithStats(28, 1, aMaterial, aMaterial, null), GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"SWS", "SSS", "xSh", Character.valueOf('S'), OrePrefixes.stick.get(aMaterial), Character.valueOf('W'), new ItemStack(Blocks.wool, 1, 32767)});
- GT_ModHandler.addCraftingRecipe(MetaGeneratedGregtechTools.INSTANCE.getToolWithStats(30, 1, aMaterial, aMaterial, null), GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"PfP", "PdP", "STS", Character.valueOf('S'), OrePrefixes.stick.get(aMaterial), Character.valueOf('P'), OrePrefixes.plate.get(aMaterial), Character.valueOf('T'), OrePrefixes.screw.get(aMaterial)});
- GT_ModHandler.addCraftingRecipe(MetaGeneratedGregtechTools.INSTANCE.getToolWithStats(34, 1, aMaterial, aMaterial, null), GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"fPh", " S ", Character.valueOf('S'), OrePrefixes.stick.get(aMaterial), Character.valueOf('P'), OrePrefixes.plate.get(aMaterial)});
- GT_ModHandler.addCraftingRecipe(MetaGeneratedGregtechTools.INSTANCE.getToolWithStats(36, 1, aMaterial, aMaterial, null), GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"PPf", "PP ", "Sh ", Character.valueOf('S'), OrePrefixes.stick.get(aMaterial), Character.valueOf('P'), OrePrefixes.plate.get(aMaterial)});
- GT_ModHandler.addCraftingRecipe(MetaGeneratedGregtechTools.INSTANCE.getToolWithStats(160, 1, aMaterial, Materials.Rubber, new long[]{100000L, 32L, 1L, -1L}), GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"LBf", "Sd ", "P ", 'B', OrePrefixes.bolt.get(aMaterial), 'P', OrePrefixes.plate.get(Materials.Rubber), 'S', OrePrefixes.stick.get(Materials.Iron), 'L', ItemList.Battery_RE_LV_Lithium.get(1L, new Object[0])});
-
-// GT_ModHandler.addCraftingRecipe(GT_Utility.copyAmount(1L,OrePrefixes.turbineBlade.get(aMaterial)), gregtech.api.util.GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | gregtech.api.util.GT_ModHandler.RecipeBits.BUFFERED, new Object[] { "B", "B", "B", 'S', OrePrefixes.screw.get(aMaterial), 'B', OrePrefixes.plate.get(aMaterial) });
-
-
- //GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.turbineBlade, aMaterial, 4L), GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.Magnalium, 1L), MetaGeneratedGregtechTools.INSTANCE.getToolWithStats(170, 1, aMaterial, aMaterial, null), 160, 100);
- //GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.turbineBlade, aMaterial, 8L), GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.Titanium, 1L), MetaGeneratedGregtechTools.INSTANCE.getToolWithStats(172, 1, aMaterial, aMaterial, null), 320, 400);
- //GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.turbineBlade, aMaterial, 12L), GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.TungstenSteel, 1L), MetaGeneratedGregtechTools.INSTANCE.getToolWithStats(174, 1, aMaterial, aMaterial, null), 640, 1600);
- //GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.turbineBlade, aMaterial, 16L), GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.Americium, 1L), MetaGeneratedGregtechTools.INSTANCE.getToolWithStats(176, 1, aMaterial, aMaterial, null), 1280, 6400);
- }
+ }
}
}
@@ -55,4 +33,31 @@ public class ProcessingToolHeadChoocher implements Interface_OreRecipeRegistrato
// TODO Auto-generated method stub
}
+
+ public void materialsLoops(){
+ Materials[] i = Materials.values();
+ int size = i.length;
+ Materials aMaterial = null;
+ for (int r=0;r<size;r++){
+ aMaterial = i[r];
+ if ((aMaterial != Materials.Stone) && (aMaterial != Materials.Flint)) {
+ if (aMaterial != Materials.Rubber)
+ if ((!aMaterial.contains(SubTag.WOOD)) && (!aMaterial.contains(SubTag.BOUNCY)) && (!aMaterial.contains(SubTag.NO_SMASHING))) {
+ GT_ModHandler.addCraftingRecipe(MetaGeneratedGregtechTools.INSTANCE.getToolWithStats(7734, 1, aMaterial, aMaterial, null), GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"P H", "PIP", " I ", Character.valueOf('I'), OrePrefixes.ingot.get(aMaterial), Character.valueOf('P'), OrePrefixes.plate.get(aMaterial), Character.valueOf('H'), OrePrefixes.toolHeadHammer.get(aMaterial)});
+ }
+ }
+
+
+ }
+
+
+ }
+
+ @Override
+ public void run() {
+ Utils.LOG_INFO("Generating Skookum Choochers of all GT Materials.");
+ materialsLoops();
+ }
+
+
} \ No newline at end of file