From e59cebaf22e175252dd6d5dd633b3d985c87ba14 Mon Sep 17 00:00:00 2001 From: Draknyte1 Date: Sun, 24 Apr 2016 02:24:39 +1000 Subject: Code Cleanups. Liquid Test 1. --- src/Java/miscutil/core/block/ModBlocks.java | 116 +++++-------- .../miscutil/core/block/fluids/BlocktestFluid.java | 50 ++++++ .../core/common/compat/COMPAT_EnderIO.java | 4 +- .../core/common/compat/COMPAT_ExtraUtils.java | 4 +- .../core/common/compat/COMPAT_MorePlanets.java | 40 ++--- .../core/common/compat/COMPAT_Thaumcraft.java | 4 +- .../handler/registration/RECIPES_Machines.java | 52 +++--- .../core/handler/registration/RECIPES_Tools.java | 14 +- .../core/item/tool/staballoy/StaballoyPickaxe.java | 6 +- src/Java/miscutil/core/util/Benchmark.java | 153 ----------------- src/Java/miscutil/core/util/ItemUtils.java | 186 --------------------- src/Java/miscutil/core/util/Log.java | 2 +- src/Java/miscutil/core/util/MiningMethods.java | 179 -------------------- src/Java/miscutil/core/util/UtilsItems.java | 186 +++++++++++++++++++++ src/Java/miscutil/core/util/UtilsMining.java | 179 ++++++++++++++++++++ .../core/util/VanillaChatCommandSender.java | 35 ++++ 16 files changed, 559 insertions(+), 651 deletions(-) create mode 100644 src/Java/miscutil/core/block/fluids/BlocktestFluid.java delete mode 100644 src/Java/miscutil/core/util/Benchmark.java delete mode 100644 src/Java/miscutil/core/util/ItemUtils.java delete mode 100644 src/Java/miscutil/core/util/MiningMethods.java create mode 100644 src/Java/miscutil/core/util/UtilsItems.java create mode 100644 src/Java/miscutil/core/util/UtilsMining.java create mode 100644 src/Java/miscutil/core/util/VanillaChatCommandSender.java (limited to 'src/Java/miscutil/core') diff --git a/src/Java/miscutil/core/block/ModBlocks.java b/src/Java/miscutil/core/block/ModBlocks.java index a2466d4bba..90cfbdca7d 100644 --- a/src/Java/miscutil/core/block/ModBlocks.java +++ b/src/Java/miscutil/core/block/ModBlocks.java @@ -1,106 +1,82 @@ package miscutil.core.block; -import miscutil.core.block.antigrief.TowerDevice; -import miscutil.core.creativetabs.AddToCreativeTab; +import miscutil.core.block.fluids.BlocktestFluid; +import miscutil.core.lib.CORE; import miscutil.core.util.Utils; import miscutil.gregtech.api.metatileentity.implementations.GregtechMetaCasingBlocks; import net.minecraft.block.Block; import net.minecraft.block.material.Material; +import net.minecraftforge.fluids.Fluid; +import net.minecraftforge.fluids.FluidRegistry; import cpw.mods.fml.common.registry.GameRegistry; public final class ModBlocks { - //Blood Steel + //Blocks public static Block blockBloodSteel; public static Block blockStaballoy; - //public static Block blockIronPlatedBricks; - public static Block blockToolBuilder; + // WIP TODO public static Block blockToolBuilder; public static Block blockGriefSaver; public static Block blockCasingsMisc; - - //public static Block blockBloodSteelChest; - - //BloodSteelorial Furnace - //public static Block tutFurnace; - //public static Block tutFurnaceActive; - //BloodSteelorial Chest - //public static Block tutChest; - - //Arcane Infuser - //public static Block arcaneInfuser; - //public static Block arcaneInfuserActive; - //Block Storage - //public static Block emxBlockStorage; + + + //Fluids + /** + * + * Luminosity .setLuminosity(luminosity) + How much light does the fluid emit. Default: 0, Lava uses 15 + Density .setDensity(density) + How dense is the fluid, the only effect is whether or not a fluid replaces another fluid when they flow into each other. Default: 1000, the density of water at 4 degrees Celsius in kg/m³ + Temperature .setTemperature(temp) + How hot, or cold is the fluid. Has currently no effect. Default: 295, the "normal" room temperature in degrees Kelvin, this is approximately 72°F or 22°C. + Viscosity .setViscosity(viscosity) + How thick the fluid is. Determines how fast it flows. Default: 1000 for water, lava uses 6000 + Is Gaseous .setGaseous(boolean) + Indicates if the fluid is gaseous. Used for rendering. Default: false + * + */ + + public static Fluid testFluid = new Fluid("testFluid"); + public static Block testFluidBlock; + public static void init() { Utils.LOG_INFO("Initializing Blocks."); - blockGriefSaver = new TowerDevice().setBlockName("blockGriefSaver").setCreativeTab(AddToCreativeTab.tabBlock).setBlockTextureName("blockDefault"); - - //BloodSteelorial Furnace - Must Init blocks first as they're not static. - /** if (CORE.DEBUG){ - FMLLog.info("Loading Furnace.");} - tutFurnace= new BloodSteelFurnace(false).setBlockName("BloodSteelFurnace").setCreativeTab(TMCreativeTabs.tabBlock); - tutFurnaceActive= new BloodSteelFurnace(true).setBlockName("BloodSteelFurnaceActive"); - - //Arcane Infuser - Must Init blocks first as they're not static. - if (CORE.DEBUG){ - FMLLog.info("Loading Arcane Infuser.");} - arcaneInfuser = new ArcaneInfuser(false).setBlockName("ArcaneInfuser").setCreativeTab(TMCreativeTabs.tabBlock); - arcaneInfuserActive = new ArcaneInfuser(true).setBlockName("ArcaneInfuserActive"); - - //Blood Steel Chest - if (CORE.DEBUG){ - FMLLog.info("Loading Blood Steel Chest.");} - tutChest = new BloodSteelChest(0).setBlockName("BloodSteelChest").setCreativeTab(TMCreativeTabs.tabBlock); - - */ - //BlockStorage - //emxBlockStorage = new BlockStorage(); - - //Register Blocks next - TODO + //blockGriefSaver = new TowerDevice().setBlockName("blockGriefSaver").setCreativeTab(AddToCreativeTab.tabBlock).setBlockTextureName("blockDefault"); + registerBlocks(); } public static void registerBlocks(){ - + Utils.LOG_INFO("Registering Blocks."); //Blood Steel Block GameRegistry.registerBlock(blockBloodSteel = new BasicBlock("blockBloodSteel", Material.iron), "blockBloodSteel"); - + //Staballoy Block GameRegistry.registerBlock(blockStaballoy = new BasicBlock("blockStaballoy", Material.iron), "blockStaballoy"); - + //Casing Blocks blockCasingsMisc = new GregtechMetaCasingBlocks(); - //Blood Steel Block //Name, Material, Hardness, Resistance, Light level, Tool, tool level, sound - //GameRegistry.registerBlock(blockToolBuilder = new AdvancedBlock("blockToolBuilder", Material.circuits, TMCreativeTabs.tabMachines, 1F, 5F, 0F, "pickaxe", 1, Block.soundTypeWood), "blockToolBuilder"); - - /** TODO re-enable blocks when working. - - - //Blood Steel Chest - GameRegistry.registerBlock(tutChest, tutChest.getUnlocalizedName()); - - //BloodSteelorial Furnace - GameRegistry.registerBlock(tutFurnace, tutFurnace.getUnlocalizedName()); - GameRegistry.registerBlock(tutFurnaceActive, tutFurnaceActive.getUnlocalizedName()); - - //Arcane Infuser - GameRegistry.registerBlock(arcaneInfuser, arcaneInfuser.getUnlocalizedName()); - GameRegistry.registerBlock(arcaneInfuserActive, arcaneInfuserActive.getUnlocalizedName()); - **/ - - //Block Storage - //GameRegistry.registerBlock(emxBlockStorage, emxBlockStorage.getUnlocalizedName()); - - //blockGriefSaver Block - //GameRegistry.registerBlock(blockGriefSaver = new AdvancedBlock("blockGriefSaver", Material.circuits, tabBlock, 2.0F, 10.0F, 0, "axe", 2, Block.soundTypeMetal), "blockGriefSaver"); - GameRegistry.registerBlock(blockGriefSaver, "blockGriefSaver"); + //Fluids + //testFluid + testFluid.setLuminosity(12); + testFluid.setDensity(1200); + testFluid.setTemperature(420); + testFluid.setViscosity(750); + testFluid.setGaseous(true); + FluidRegistry.registerFluid(testFluid); + testFluidBlock = new BlocktestFluid(testFluid, Material.water).setBlockName("yourFluid"); + GameRegistry.registerBlock(testFluidBlock, CORE.MODID + "_" + testFluidBlock.getUnlocalizedName().substring(5)); + testFluid.setUnlocalizedName(testFluidBlock.getUnlocalizedName()); + + //WIP TODO + //GameRegistry.registerBlock(blockGriefSaver, "blockGriefSaver"); } } \ No newline at end of file diff --git a/src/Java/miscutil/core/block/fluids/BlocktestFluid.java b/src/Java/miscutil/core/block/fluids/BlocktestFluid.java new file mode 100644 index 0000000000..07addf45a8 --- /dev/null +++ b/src/Java/miscutil/core/block/fluids/BlocktestFluid.java @@ -0,0 +1,50 @@ +package miscutil.core.block.fluids; + +import miscutil.core.creativetabs.AddToCreativeTab; +import net.minecraft.block.material.Material; +import net.minecraft.client.renderer.texture.IIconRegister; +import net.minecraft.util.IIcon; +import net.minecraft.world.IBlockAccess; +import net.minecraft.world.World; +import net.minecraftforge.fluids.BlockFluidClassic; +import net.minecraftforge.fluids.Fluid; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; + +public class BlocktestFluid extends BlockFluidClassic { + + @SideOnly(Side.CLIENT) + protected IIcon stillIcon; + @SideOnly(Side.CLIENT) + protected IIcon flowingIcon; + + public BlocktestFluid(Fluid fluid, Material material) { + super(fluid, material); + setCreativeTab(AddToCreativeTab.tabMisc); + } + + @Override + public IIcon getIcon(int side, int meta) { + return (side == 0 || side == 1)? stillIcon : flowingIcon; + } + + @SideOnly(Side.CLIENT) + @Override + public void registerBlockIcons(IIconRegister register) { + stillIcon = register.registerIcon("modid:fluidStill"); + flowingIcon = register.registerIcon("modid:fluidFlowing"); + } + + @Override + public boolean canDisplace(IBlockAccess world, int x, int y, int z) { + if (world.getBlock(x, y, z).getMaterial().isLiquid()) return false; + return super.canDisplace(world, x, y, z); + } + + @Override + public boolean displaceIfPossible(World world, int x, int y, int z) { + if (world.getBlock(x, y, z).getMaterial().isLiquid()) return false; + return super.displaceIfPossible(world, x, y, z); + } + +} diff --git a/src/Java/miscutil/core/common/compat/COMPAT_EnderIO.java b/src/Java/miscutil/core/common/compat/COMPAT_EnderIO.java index af7afcc452..1e87907358 100644 --- a/src/Java/miscutil/core/common/compat/COMPAT_EnderIO.java +++ b/src/Java/miscutil/core/common/compat/COMPAT_EnderIO.java @@ -2,7 +2,7 @@ package miscutil.core.common.compat; import gregtech.api.util.GT_OreDictUnificator; import miscutil.core.item.ModItems; -import miscutil.core.util.ItemUtils; +import miscutil.core.util.UtilsItems; import net.minecraft.item.ItemStack; public class COMPAT_EnderIO { @@ -12,7 +12,7 @@ public class COMPAT_EnderIO { } private static final void run(){ - ItemUtils.getItemForOreDict("EnderIO:itemAlloy", "ingotVibrantAlloy", "Vibrant Alloy Ingot", 2); + UtilsItems.getItemForOreDict("EnderIO:itemAlloy", "ingotVibrantAlloy", "Vibrant Alloy Ingot", 2); GT_OreDictUnificator.registerOre("plateConductiveIron", new ItemStack(ModItems.itemPlateConductiveIron)); GT_OreDictUnificator.registerOre("plateDarkSteel", new ItemStack(ModItems.itemPlateDarkSteel)); GT_OreDictUnificator.registerOre("plateElectricalSteel", new ItemStack(ModItems.itemPlateElectricalSteel)); diff --git a/src/Java/miscutil/core/common/compat/COMPAT_ExtraUtils.java b/src/Java/miscutil/core/common/compat/COMPAT_ExtraUtils.java index 031c11e337..b719085006 100644 --- a/src/Java/miscutil/core/common/compat/COMPAT_ExtraUtils.java +++ b/src/Java/miscutil/core/common/compat/COMPAT_ExtraUtils.java @@ -2,7 +2,7 @@ package miscutil.core.common.compat; import gregtech.api.util.GT_OreDictUnificator; import miscutil.core.item.ModItems; -import miscutil.core.util.ItemUtils; +import miscutil.core.util.UtilsItems; import net.minecraft.item.ItemStack; public class COMPAT_ExtraUtils { @@ -12,7 +12,7 @@ public class COMPAT_ExtraUtils { } private static final void run(){ - ItemUtils.getItemForOreDict("ExtraUtilities:bedrockiumIngot", "ingotBedrockium", "Bedrockium Ingot", 0); + UtilsItems.getItemForOreDict("ExtraUtilities:bedrockiumIngot", "ingotBedrockium", "Bedrockium Ingot", 0); GT_OreDictUnificator.registerOre("plateBedrockium", new ItemStack(ModItems.itemPlateBedrockium)); } diff --git a/src/Java/miscutil/core/common/compat/COMPAT_MorePlanets.java b/src/Java/miscutil/core/common/compat/COMPAT_MorePlanets.java index adfafdebea..69fefd3f52 100644 --- a/src/Java/miscutil/core/common/compat/COMPAT_MorePlanets.java +++ b/src/Java/miscutil/core/common/compat/COMPAT_MorePlanets.java @@ -1,6 +1,6 @@ package miscutil.core.common.compat; -import miscutil.core.util.ItemUtils; +import miscutil.core.util.UtilsItems; public class COMPAT_MorePlanets { @@ -11,27 +11,27 @@ public class COMPAT_MorePlanets { private final static void run(){ //Metals - ItemUtils.getItemForOreDict("MorePlanet:kapteyn-b_item", "ingotFrozenIron", "Frozen Iron Ingot", 0); - ItemUtils.getItemForOreDict("MorePlanet:kapteyn-b_item", "ingotAnyIron", "Frozen Iron Ingot", 0); - ItemUtils.getItemForOreDict("MorePlanet:polongnius_item", "ingotPalladium", "Palladium Ingot", 5); - ItemUtils.getItemForOreDict("MorePlanet:fronos_item", "ingotIridium", "Iridium Ingot", 3); - ItemUtils.getItemForOreDict("MorePlanet:nibiru_item", "ingotNorium", "Norium Ingot", 1); - ItemUtils.getItemForOreDict("MorePlanet:venus_item", "ingotLead", "Lead Ingot", 0); - ItemUtils.getItemForOreDict("MorePlanet:diona_item", "ingotQuontonium", "Quontonium Ingot", 0); - ItemUtils.getItemForOreDict("MorePlanet:diona_item", "ingotFronisium", "Fronisium Ingot", 1); - ItemUtils.getItemForOreDict("MorePlanet:sirius-b_item", "ingotSulfur", "Sulfur Ingot", 3); - ItemUtils.getItemForOreDict("MorePlanet:koentus_item", "ingotKoentusMeteoricIron", "Koentus Meteoric Iron Ingot", 4); - ItemUtils.getItemForOreDict("MorePlanet:mercury_item", "ingotMetallic", "Metallic Ingot", 2); - ItemUtils.getItemForOreDict("MorePlanet:polongnius_item", "ingotPolongiusMeteoricIron", "Polongius Meteoric Iron Ingot", 4); - ItemUtils.getItemForOreDict("MorePlanet:mercury_item", "ingotMeteoricSteel", "Meteoric Steel Ingot", 3); - ItemUtils.getItemForOreDict("MorePlanet:sirius-b_item", "dustSulfur", "Sulfur Dust", 2); + UtilsItems.getItemForOreDict("MorePlanet:kapteyn-b_item", "ingotFrozenIron", "Frozen Iron Ingot", 0); + UtilsItems.getItemForOreDict("MorePlanet:kapteyn-b_item", "ingotAnyIron", "Frozen Iron Ingot", 0); + UtilsItems.getItemForOreDict("MorePlanet:polongnius_item", "ingotPalladium", "Palladium Ingot", 5); + UtilsItems.getItemForOreDict("MorePlanet:fronos_item", "ingotIridium", "Iridium Ingot", 3); + UtilsItems.getItemForOreDict("MorePlanet:nibiru_item", "ingotNorium", "Norium Ingot", 1); + UtilsItems.getItemForOreDict("MorePlanet:venus_item", "ingotLead", "Lead Ingot", 0); + UtilsItems.getItemForOreDict("MorePlanet:diona_item", "ingotQuontonium", "Quontonium Ingot", 0); + UtilsItems.getItemForOreDict("MorePlanet:diona_item", "ingotFronisium", "Fronisium Ingot", 1); + UtilsItems.getItemForOreDict("MorePlanet:sirius-b_item", "ingotSulfur", "Sulfur Ingot", 3); + UtilsItems.getItemForOreDict("MorePlanet:koentus_item", "ingotKoentusMeteoricIron", "Koentus Meteoric Iron Ingot", 4); + UtilsItems.getItemForOreDict("MorePlanet:mercury_item", "ingotMetallic", "Metallic Ingot", 2); + UtilsItems.getItemForOreDict("MorePlanet:polongnius_item", "ingotPolongiusMeteoricIron", "Polongius Meteoric Iron Ingot", 4); + UtilsItems.getItemForOreDict("MorePlanet:mercury_item", "ingotMeteoricSteel", "Meteoric Steel Ingot", 3); + UtilsItems.getItemForOreDict("MorePlanet:sirius-b_item", "dustSulfur", "Sulfur Dust", 2); //Gems - ItemUtils.getItemForOreDict("MorePlanet:fronos_item", "gemBlackDiamond", "Black Diamond Gem", 2); - ItemUtils.getItemForOreDict("MorePlanet:koentus_item", "gemWhiteCrystal", "White Crystal", 0); - ItemUtils.getItemForOreDict("MorePlanet:nibiru_item", "gemRedCrystal", "Red Crystal", 0); - ItemUtils.getItemForOreDict("MorePlanet:pluto_item", "gemXeonius", "Xeonius Gem", 0); - ItemUtils.getItemForOreDict("MorePlanet:kapteyn-b_item", "gemUranium", "Uranium Gem", 1); + UtilsItems.getItemForOreDict("MorePlanet:fronos_item", "gemBlackDiamond", "Black Diamond Gem", 2); + UtilsItems.getItemForOreDict("MorePlanet:koentus_item", "gemWhiteCrystal", "White Crystal", 0); + UtilsItems.getItemForOreDict("MorePlanet:nibiru_item", "gemRedCrystal", "Red Crystal", 0); + UtilsItems.getItemForOreDict("MorePlanet:pluto_item", "gemXeonius", "Xeonius Gem", 0); + UtilsItems.getItemForOreDict("MorePlanet:kapteyn-b_item", "gemUranium", "Uranium Gem", 1); } } diff --git a/src/Java/miscutil/core/common/compat/COMPAT_Thaumcraft.java b/src/Java/miscutil/core/common/compat/COMPAT_Thaumcraft.java index 5d2ba0cb92..ae5844bbfc 100644 --- a/src/Java/miscutil/core/common/compat/COMPAT_Thaumcraft.java +++ b/src/Java/miscutil/core/common/compat/COMPAT_Thaumcraft.java @@ -2,7 +2,7 @@ package miscutil.core.common.compat; import gregtech.api.util.GT_OreDictUnificator; import miscutil.core.item.ModItems; -import miscutil.core.util.ItemUtils; +import miscutil.core.util.UtilsItems; import net.minecraft.item.ItemStack; public class COMPAT_Thaumcraft { @@ -12,7 +12,7 @@ public class COMPAT_Thaumcraft { } private static final void run(){ - ItemUtils.getItemForOreDict("Thaumcraft:ItemResource", "ingotVoidMetal", "Void Metal Ingot", 16); + UtilsItems.getItemForOreDict("Thaumcraft:ItemResource", "ingotVoidMetal", "Void Metal Ingot", 16); GT_OreDictUnificator.registerOre("plateVoidMetal", new ItemStack(ModItems.itemPlateVoidMetal)); } diff --git a/src/Java/miscutil/core/handler/registration/RECIPES_Machines.java b/src/Java/miscutil/core/handler/registration/RECIPES_Machines.java index ecf7739ea7..d219cb8259 100644 --- a/src/Java/miscutil/core/handler/registration/RECIPES_Machines.java +++ b/src/Java/miscutil/core/handler/registration/RECIPES_Machines.java @@ -1,7 +1,7 @@ package miscutil.core.handler.registration; import gregtech.api.enums.ItemList; -import miscutil.core.util.ItemUtils; +import miscutil.core.util.UtilsItems; import miscutil.core.util.Utils; import miscutil.gregtech.api.enums.GregtechItemList; import net.minecraft.item.ItemStack; @@ -181,53 +181,53 @@ public class RECIPES_Machines { private static void run(){ //Buffer Core - ItemUtils.recipeBuilder( + UtilsItems.recipeBuilder( plateTier1, cableTier1, plateTier1, circuitPrimitive, batteryBasic, circuitPrimitive, plateTier1, cableTier1, plateTier1, RECIPE_BufferCore_ULV); - ItemUtils.recipeBuilder( + UtilsItems.recipeBuilder( plateTier2, cableTier2, plateTier2, circuitBasic, batteryBasic, circuitBasic, plateTier2, cableTier2, plateTier2, RECIPE_BufferCore_LV); - ItemUtils.recipeBuilder( + UtilsItems.recipeBuilder( plateTier3, cableTier3, plateTier3, circuitGood, batteryAdvanced, circuitGood, plateTier3, cableTier3, plateTier3, RECIPE_BufferCore_MV); - ItemUtils.recipeBuilder( + UtilsItems.recipeBuilder( plateTier4, cableTier4, plateTier4, circuitAdvanced, batteryAdvanced, circuitAdvanced, plateTier4, cableTier4, plateTier4, RECIPE_BufferCore_HV); - ItemUtils.recipeBuilder( + UtilsItems.recipeBuilder( plateTier5, cableTier5, plateTier5, circuitData, batteryElite, circuitData, plateTier5, cableTier5, plateTier5, RECIPE_BufferCore_EV); - ItemUtils.recipeBuilder( + UtilsItems.recipeBuilder( plateTier6, cableTier6, plateTier6, circuitData, batteryElite, circuitElite, plateTier6, cableTier6, plateTier6, RECIPE_BufferCore_IV); - ItemUtils.recipeBuilder( + UtilsItems.recipeBuilder( plateTier7, cableTier7, plateTier7, circuitElite, batteryMaster, circuitElite, plateTier7, cableTier7, plateTier7, RECIPE_BufferCore_LuV); - ItemUtils.recipeBuilder( + UtilsItems.recipeBuilder( plateTier8, cableTier8, plateTier8, circuitMaster, batteryMaster, circuitMaster, plateTier8, cableTier8, plateTier8, RECIPE_BufferCore_ZPM); - ItemUtils.recipeBuilder( + UtilsItems.recipeBuilder( plateTier9, cableTier9, plateTier9, circuitMaster, batteryUltimate, circuitUltimate, plateTier9, cableTier9, plateTier9, RECIPE_BufferCore_UV); - ItemUtils.recipeBuilder( + UtilsItems.recipeBuilder( plateTier10, cableTier10, plateTier10, circuitUltimate, batteryUltimate, circuitUltimate, plateTier10, cableTier10, plateTier10, @@ -245,62 +245,62 @@ public class RECIPES_Machines { //Battery Buffer #1 - ItemUtils.recipeBuilder( + UtilsItems.recipeBuilder( wireTier1, RECIPE_BufferCore_ULV, wireTier1, wireTier1, machineCasing_ULV, wireTier1, circuitPrimitive, null, circuitPrimitive, RECIPE_Buffer_ULV); //Battery Buffer - ItemUtils.recipeBuilder( + UtilsItems.recipeBuilder( wireTier2, RECIPE_BufferCore_LV, wireTier2, wireTier2, machineCasing_LV, wireTier2, circuitPrimitive, circuitBasic, circuitPrimitive, RECIPE_Buffer_LV); //Battery Buffer - ItemUtils.recipeBuilder( + UtilsItems.recipeBuilder( wireTier3, RECIPE_BufferCore_MV, wireTier3, wireTier3, machineCasing_MV, wireTier3, circuitBasic, circuitGood, circuitBasic, RECIPE_Buffer_MV); //Battery Buffer - ItemUtils.recipeBuilder( + UtilsItems.recipeBuilder( wireTier4, RECIPE_BufferCore_HV, wireTier4, wireTier4, machineCasing_HV, wireTier4, circuitGood, circuitAdvanced, circuitGood, RECIPE_Buffer_HV); //Battery Buffer - ItemUtils.recipeBuilder( + UtilsItems.recipeBuilder( wireTier5, RECIPE_BufferCore_EV, wireTier5, wireTier5, machineCasing_EV, wireTier5, circuitAdvanced, circuitElite, circuitAdvanced, RECIPE_Buffer_EV); //Battery Buffer - ItemUtils.recipeBuilder( + UtilsItems.recipeBuilder( wireTier6, RECIPE_BufferCore_IV, wireTier6, wireTier6, machineCasing_IV, wireTier6, circuitElite, circuitMaster, circuitElite, RECIPE_Buffer_IV); //Battery Buffer - ItemUtils.recipeBuilder( + UtilsItems.recipeBuilder( wireTier7, RECIPE_BufferCore_LuV, wireTier7, wireTier7, machineCasing_LuV, wireTier7, circuitMaster, circuitElite, circuitMaster, RECIPE_Buffer_LuV); //Battery Buffer - ItemUtils.recipeBuilder( + UtilsItems.recipeBuilder( wireTier8, RECIPE_BufferCore_ZPM, wireTier8, wireTier8, machineCasing_ZPM, wireTier8, circuitMaster, circuitUltimate, circuitMaster, RECIPE_Buffer_ZPM); //Battery Buffer - ItemUtils.recipeBuilder( + UtilsItems.recipeBuilder( wireTier9, RECIPE_BufferCore_UV, wireTier9, wireTier9, machineCasing_UV, wireTier9, circuitUltimate, circuitMaster, circuitUltimate, RECIPE_Buffer_UV); //Battery Buffer - ItemUtils.recipeBuilder( + UtilsItems.recipeBuilder( wireTier10, RECIPE_BufferCore_MAX, wireTier10, wireTier10, machineCasing_MAX, wireTier10, circuitUltimate, plateTier11, circuitUltimate, @@ -308,21 +308,21 @@ public class RECIPES_Machines { //Steam Condenser - ItemUtils.recipeBuilder( + UtilsItems.recipeBuilder( pipeLargeCopper, pipeHugeSteel, pipeLargeCopper, plateEnergeticAlloy, electricPump_HV, plateEnergeticAlloy, plateEnergeticAlloy, pipeLargeCopper, plateEnergeticAlloy, RECIPE_SteamCondenser); //Iron BF - ItemUtils.recipeBuilder( + UtilsItems.recipeBuilder( "plateDoubleAnyIron", "craftingFurnace", "plateDoubleAnyIron", boiler_Coal, machineCasing_ULV, boiler_Coal, "plateDoubleAnyIron", "bucketLava", "plateDoubleAnyIron", RECIPE_IronBlastFurnace); //Iron plated Bricks - ItemUtils.recipeBuilder( + UtilsItems.recipeBuilder( "plateAnyIron", RECIPES_Tools.craftingToolHardHammer, "plateAnyIron", "plateAnyIron", blockBricks, "plateAnyIron", "plateAnyIron", RECIPES_Tools.craftingToolWrench, "plateAnyIron", @@ -332,14 +332,14 @@ public class RECIPES_Machines { //Industrial Centrifuge - ItemUtils.recipeBuilder( + UtilsItems.recipeBuilder( circuitElite, pipeHugeStainlessSteel, circuitElite, plateTier6, electricPump_EV, plateTier6, plateTier8, machineCasing_EV, plateTier8, RECIPE_IndustrialCentrifuge); //Steam Condenser - ItemUtils.recipeBuilder( + UtilsItems.recipeBuilder( plateTier6, "stickElectrum", plateTier6, plateTier8, "stickElectrum", plateTier8, plateTier6, "stickElectrum", plateTier6, diff --git a/src/Java/miscutil/core/handler/registration/RECIPES_Tools.java b/src/Java/miscutil/core/handler/registration/RECIPES_Tools.java index b40327fceb..62479b23bd 100644 --- a/src/Java/miscutil/core/handler/registration/RECIPES_Tools.java +++ b/src/Java/miscutil/core/handler/registration/RECIPES_Tools.java @@ -1,7 +1,7 @@ package miscutil.core.handler.registration; import miscutil.core.item.ModItems; -import miscutil.core.util.ItemUtils; +import miscutil.core.util.UtilsItems; import miscutil.core.util.Utils; import net.minecraft.block.Block; import net.minecraft.init.Blocks; @@ -130,42 +130,42 @@ public class RECIPES_Tools { private static void run(){ //Staballoy Pickaxe - ItemUtils.recipeBuilder( + UtilsItems.recipeBuilder( plateStaballoy, plateStaballoy, ingotStaballoy, craftingToolFile, stickTungsten, craftingToolHardHammer, craftingToolWrench, stickTungsten, craftingToolHardHammer, RECIPE_StaballoyPickaxe); //Staballoy Axe - ItemUtils.recipeBuilder( + UtilsItems.recipeBuilder( plateStaballoy, ingotStaballoy, craftingToolHardHammer, plateStaballoy, stickTungsten, craftingToolHardHammer, craftingToolFile, stickTungsten, craftingToolWrench, RECIPE_StaballoyAxe); //Cobble to Sand - ItemUtils.recipeBuilder( + UtilsItems.recipeBuilder( CobbleStone, CobbleStone, CobbleStone, CobbleStone, sandHammer, CobbleStone, CobbleStone, CobbleStone, CobbleStone, RECIPE_Sand); //Sand to Sandstone - ItemUtils.recipeBuilder( + UtilsItems.recipeBuilder( Sand, Sand, Sand, Sand, sandHammer, Sand, Sand, Sand, Sand, RECIPE_SandStone); //Sandstone Hammer - ItemUtils.recipeBuilder( + UtilsItems.recipeBuilder( plateElectrum, ingotElectrum, plateElectrum, craftingToolScrewdriver, stickBronze, craftingToolHardHammer, null, stickSteel, null, RECIPE_SandstoneHammer); //Division Sigil - ItemUtils.recipeBuilder( + UtilsItems.recipeBuilder( "plateNetherStar", "gemIridium", "plateNetherStar", "plateIridium", craftingToolHardHammer, "plateIridium", "plateNetherStar", "gemIridium", "plateNetherStar", diff --git a/src/Java/miscutil/core/item/tool/staballoy/StaballoyPickaxe.java b/src/Java/miscutil/core/item/tool/staballoy/StaballoyPickaxe.java index 0eee4cd165..7f050a76f1 100644 --- a/src/Java/miscutil/core/item/tool/staballoy/StaballoyPickaxe.java +++ b/src/Java/miscutil/core/item/tool/staballoy/StaballoyPickaxe.java @@ -3,7 +3,7 @@ package miscutil.core.item.tool.staballoy; import java.util.List; import miscutil.core.lib.CORE; -import miscutil.core.util.MiningMethods; +import miscutil.core.util.UtilsMining; import miscutil.core.util.Utils; import net.minecraft.block.Block; import net.minecraft.entity.EntityLivingBase; @@ -104,7 +104,7 @@ public class StaballoyPickaxe extends ItemPickaxe{ try { correctTool = currentBlock.getHarvestTool(0); //Utils.LOG_WARNING(correctTool); - if (MiningMethods.getBlockType(currentBlock) || correctTool.equals("pickaxe")){ + if (UtilsMining.getBlockType(currentBlock) || correctTool.equals("pickaxe")){ return true;} } catch (NullPointerException e){ return false;} @@ -183,7 +183,7 @@ public class StaballoyPickaxe extends ItemPickaxe{ String removalTool = ""; removalTool = block.getHarvestTool(1); - if (removalTool.equals("pickaxe") || MiningMethods.getBlockType(block)){ + if (removalTool.equals("pickaxe") || UtilsMining.getBlockType(block)){ if (canPickaxeBlock(block, world)){ if((block != Blocks.bedrock) && (block.getBlockHardness(world, X, Y, Z) != -1) && (block.getBlockHardness(world, X, Y, Z) <= 100) && (block != Blocks.water) && (block != Blocks.lava)){ diff --git a/src/Java/miscutil/core/util/Benchmark.java b/src/Java/miscutil/core/util/Benchmark.java deleted file mode 100644 index 1e17175c3b..0000000000 --- a/src/Java/miscutil/core/util/Benchmark.java +++ /dev/null @@ -1,153 +0,0 @@ -package miscutil.core.util; - -import java.security.MessageDigest; -import java.security.NoSuchAlgorithmException; -import java.text.DateFormat; -import java.text.ParseException; -import java.text.SimpleDateFormat; -import java.util.Calendar; -import java.util.Random; - -import cpw.mods.fml.common.FMLLog; - -@SuppressWarnings("unused") -public class Benchmark { - - public void math() throws ParseException{ - Random r = new Random(); - - FMLLog.info("Looking at the stars in the sky"); - - // generate some random boolean values - boolean[] booleans = new boolean[10]; - for (int i = 0; i < booleans.length; i++) { - booleans[i] = r.nextBoolean(); - } - - //FMLLog.info(getSha256(booleans.toString())); - - /*for (boolean b : booleans) { - FMLLog.info(b + ", "); - }*/ - - // generate a uniformly distributed int random numbers - int[] integers = new int[10]; - for (int i = 0; i < integers.length; i++) { - integers[i] = r.nextInt(); - } - - FMLLog.info(getSha256(integers.toString())); - - /*for (int i : integers) {s - FMLLog.info(i + ", "); - }*/ - - // generate a uniformly distributed float random numbers - float[] floats = new float[10]; - for (int i = 0; i < floats.length; i++) { - floats[i] = r.nextFloat(); - } - - FMLLog.info(getSha256(floats.toString())); - - /*for (float f : floats) { - FMLLog.info(f + ", "); - }*/ - - // generate a Gaussian normally distributed random numbers - double[] gaussians = new double[10]; - for (int i = 0; i < gaussians.length; i++) { - gaussians[i] = r.nextGaussian(); - } - - FMLLog.info(getSha256(gaussians.toString())); - } - - private String dateTime(){ - DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd - HH:mm:ss"); - //get current date time with Calendar() - Calendar cal = Calendar.getInstance(); - return dateFormat.format(cal.getTime()); - } - - public String superhash(String a){ - FMLLog.info("Calculating the cost of life & the universe"); - int i = 1; - String b = a; - while (i < 3358 && i > 0){ - if (!b.equals(a)){ - b = a; - } - getSha256(b); - a = b; - try { - Thread.sleep(2); - } catch (InterruptedException e) { - FMLLog.info("Hashbrown order failed"); - e.printStackTrace(); - } - if (i == 500 || i == 1000 || i == 1500 || i == 2000 || i == 2500 || i == 3000 || i == 3500 || i == 4000 || i == 5000){ - //FMLLog.info("Calculating orbits around the sun: "+i); - } - i++; - } - return b; - } - - private String getSha256(String message) { - if (message == null || message.isEmpty()) { - return ""; - } - String chiper = generateString("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890-=!@#$%^&*()_+`~[];',./{}:<>?|'", 32); - String key = generateString("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890-=!@#$%^&*()_+`~[];',./{}:<>?|'", 16); // key is used to construct a new SHA-256 key/salt - - // Initialize SHA-256 - MessageDigest digest = null; - try { - digest = MessageDigest.getInstance("SHA-256"); - } catch (NoSuchAlgorithmException e) { - System.err.println(e.getMessage()); - } - - // Hashing entered key to construct a new key/salt - byte[] keyAsSHA256 = digest.digest(key.getBytes()); - - // Encoding the message with CBC - char[] messageAsChars = message.toCharArray(); - messageAsChars[0] ^= keyAsSHA256[0]; // Avoiding buffer underflow - for (int i = 1; i < messageAsChars.length; i++) { - messageAsChars[i] ^= messageAsChars[i - 1]; // XOR with previous character - messageAsChars[i] ^= keyAsSHA256[i % keyAsSHA256.length]; // XOR with keys hash - } - // build cipher from the chars - chiper = new String(messageAsChars); - String cipher = MD5(chiper); - return chiper + "|" + cipher; - } - - public String MD5(String md5) { - try { - java.security.MessageDigest md = java.security.MessageDigest.getInstance("MD5"); - byte[] array = md.digest(md5.getBytes()); - StringBuffer sb = new StringBuffer(); - for (int i = 0; i < array.length; ++i) { - sb.append(Integer.toHexString((array[i] & 0xFF) | 0x100).substring(1,3)); - } - return sb.toString(); - } catch (java.security.NoSuchAlgorithmException e) { - } - return null; - } - - public static String generateString(String characters, int length) - { - Random r = new Random(); - char[] text = new char[length]; - for (int i = 0; i < length; i++) - { - text[i] = characters.charAt(r.nextInt(characters.length())); - } - return new String(text); - } - -} \ No newline at end of file diff --git a/src/Java/miscutil/core/util/ItemUtils.java b/src/Java/miscutil/core/util/ItemUtils.java deleted file mode 100644 index fa7fb5f969..0000000000 --- a/src/Java/miscutil/core/util/ItemUtils.java +++ /dev/null @@ -1,186 +0,0 @@ -package miscutil.core.util; - -import gregtech.api.util.GT_OreDictUnificator; - -import java.util.ArrayList; - -import miscutil.core.handler.registration.RegistrationHandler; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraftforge.oredict.ShapedOreRecipe; -import cpw.mods.fml.common.registry.GameRegistry; - -public class ItemUtils { - - public static ItemStack getItemStackOfItem(Boolean modToCheck, String mod_itemname_meta){ - if (modToCheck){ - try{ - Item em = null; - - Item em1 = Utils.getItem(mod_itemname_meta); - Utils.LOG_WARNING("Found: "+em1.toString()); - if (!em1.equals(null)){ - em = em1; - } - else { - em = null; - return null; - } - if (!em.equals(null)){ - ItemStack returnStack = new ItemStack(em,1,16); - return returnStack; - } - Utils.LOG_WARNING(mod_itemname_meta+" not found."); - return null; - } catch (NullPointerException e) { - Utils.LOG_ERROR(mod_itemname_meta+" not found. [NULL]"); - return null; - } - } - return null; - } - - public static void getItemForOreDict(String FQRN, String oreDictName, String itemName, int meta){ - try { - Item em = null; - Item em1 = Utils.getItem(FQRN); - Utils.LOG_WARNING("Found: "+em1.getUnlocalizedName()+":"+meta); - if (em1 != null){ - em = em1; - } - if (em != null){ - - ItemStack metaStack = new ItemStack(em,1,meta); - GT_OreDictUnificator.registerOre(oreDictName, metaStack); - - /*ItemStack itemStackWithMeta = new ItemStack(em,1,meta); - GT_OreDictUnificator.registerOre(oreDictName, new ItemStack(itemStackWithMeta.getItem()));*/ - } - } catch (NullPointerException e) { - Utils.LOG_ERROR(itemName+" not found. [NULL]"); - } - } - - public static void recipeBuilder(Object slot_1, Object slot_2, Object slot_3, Object slot_4, Object slot_5, Object slot_6, Object slot_7, Object slot_8, Object slot_9, ItemStack resultItem){ - - ArrayList validSlots = new ArrayList(); - - //, String lineFirst, String lineSecond, String lineThird - Utils.LOG_INFO("Trying to add a recipe for "+resultItem.toString()); - String a,b,c,d,e,f,g,h,i; - //ItemStack empty = new ItemStack(Blocks.air); - if (slot_1 == null){ a = " ";} else { a = "1";validSlots.add('1');validSlots.add(slot_1);} - Utils.LOG_WARNING(a); - if (slot_2 == null){ b = " ";} else { b = "2";validSlots.add('2');validSlots.add(slot_2);} - Utils.LOG_WARNING(b); - if (slot_3 == null){ c = " ";} else { c = "3";validSlots.add('3');validSlots.add(slot_3);} - Utils.LOG_WARNING(c); - if (slot_4 == null){ d = " ";} else { d = "4";validSlots.add('4');validSlots.add(slot_4);} - Utils.LOG_WARNING(d); - if (slot_5 == null){ e = " ";} else { e = "5";validSlots.add('5');validSlots.add(slot_5);} - Utils.LOG_WARNING(e); - if (slot_6 == null){ f = " ";} else { f = "6";validSlots.add('6');validSlots.add(slot_6);} - Utils.LOG_WARNING(f); - if (slot_7 == null){ g = " ";} else { g = "7";validSlots.add('7');validSlots.add(slot_7);} - Utils.LOG_WARNING(g); - if (slot_8 == null){ h = " ";} else { h = "8";validSlots.add('8');validSlots.add(slot_8);} - Utils.LOG_WARNING(h); - if (slot_9 == null){ i = " ";} else { i = "9";validSlots.add('9');validSlots.add(slot_9);} - Utils.LOG_WARNING(i); - - - Utils.LOG_ERROR("_______"); - String lineOne = a+b+c; - Utils.LOG_ERROR("|"+a+"|"+b+"|"+c+"|"); - Utils.LOG_ERROR("_______"); - String lineTwo = d+e+f; - Utils.LOG_ERROR("|"+d+"|"+e+"|"+f+"|"); - Utils.LOG_ERROR("_______"); - String lineThree = g+h+i; - Utils.LOG_ERROR("|"+g+"|"+h+"|"+i+"|"); - Utils.LOG_ERROR("_______"); - - validSlots.add(0, lineOne); - validSlots.add(1, lineTwo); - validSlots.add(2, lineThree); - Boolean AadvancedLog = true; - if (AadvancedLog){ - int j = 0; - int l = validSlots.size(); - Utils.LOG_WARNING("l:"+l); - while (j <= l) { - Utils.LOG_WARNING("j:"+j); - if (j <= 2){ - Utils.LOG_WARNING("ArrayList Values: "+validSlots.get(j)); - Utils.LOG_WARNING("Adding 1."); - j++; - } - else if (j >= 3){ - Utils.LOG_WARNING("ArrayList Values: '"+validSlots.get(j)+"' "+validSlots.get(j+1)); - if (j < (l-2)){ - Utils.LOG_WARNING("Adding 2."); - j=j+2; - } - else { - Utils.LOG_WARNING("Done iteration."); - break; - } - } - else if (j == l){ - Utils.LOG_WARNING("Done iteration."); - break; - } - if (validSlots.get(j) instanceof String || validSlots.get(j) instanceof ItemStack){ - //Utils.LOG_WARNING("Is Valid: "+validSlots.get(j)); - } - } - } - - try { - /*Utils.LOG_WARNING("validSlots to array: "+validSlots.toArray()); - Object[] validSlotsArray = (Object[]) validSlots.toArray(); - - for(int j = 0; j < validSlotsArray.length; j++) - { - Utils.LOG_ERROR(""+validSlotsArray[j]); - }*/ - - GameRegistry.addRecipe(new ShapedOreRecipe(resultItem.copy(), (Object[]) validSlots.toArray())); - Utils.LOG_INFO("Success! Added a recipe for "+resultItem.toString()); - RegistrationHandler.recipesSuccess++; - /*try { - try { - try { - //Code - } - catch (NullPointerException | ClassCastException r){ - Utils.LOG_WARNING("@@@: Invalid Recipe detected for: "+resultItem.getUnlocalizedName()); - RegistrationHandler.recipesFailed++; - r.printStackTrace(); - //System.exit(1); - } - } - catch (NullPointerException o){ - - Utils.LOG_WARNING("@@@: Invalid Recipe detected for: "+resultItem.getUnlocalizedName()); - o.printStackTrace(); - RegistrationHandler.recipesFailed++; - //System.exit(1); - } - } - catch (ClassCastException r){ - Utils.LOG_WARNING("@@@: Casting to ObjectArray Failed :("); - }*/ - } - catch(NullPointerException | ClassCastException k){ - k.getMessage(); - k.getClass(); - k.printStackTrace(); - k.getLocalizedMessage(); - Utils.LOG_WARNING("@@@: Invalid Recipe detected for: "+resultItem.getUnlocalizedName()); - RegistrationHandler.recipesFailed++; - //System.exit(1); - } - } - -} diff --git a/src/Java/miscutil/core/util/Log.java b/src/Java/miscutil/core/util/Log.java index 3d0bf73099..90c9dbdf79 100644 --- a/src/Java/miscutil/core/util/Log.java +++ b/src/Java/miscutil/core/util/Log.java @@ -5,7 +5,7 @@ import org.apache.logging.log4j.Logger; public final class Log { - public static final Logger LOGGER = LogManager.getLogger("EnderIO"); + public static final Logger LOGGER = LogManager.getLogger("MiscUtils"); public static void warn(String msg) { diff --git a/src/Java/miscutil/core/util/MiningMethods.java b/src/Java/miscutil/core/util/MiningMethods.java deleted file mode 100644 index 6f8042f800..0000000000 --- a/src/Java/miscutil/core/util/MiningMethods.java +++ /dev/null @@ -1,179 +0,0 @@ -package miscutil.core.util; - -import net.minecraft.block.Block; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.init.Blocks; -import net.minecraft.item.ItemStack; -import net.minecraft.world.World; - -public class MiningMethods { - - private static boolean durabilityDamage = false; - private static ItemStack stack; - - public static Boolean canPickaxeBlock(Block currentBlock, World currentWorld){ - String correctTool = ""; - if (!currentWorld.isRemote){ - try { - correctTool = currentBlock.getHarvestTool(0); - //Utils.LOG_WARNING(correctTool); - if (correctTool.equals("pickaxe")){ - return true;} - } catch (NullPointerException e){ - return false;} - } - return false; - } - - private static void removeBlockAndDropAsItem(World world, int X, int Y, int Z){ - try { - Block block = world.getBlock(X, Y, Z); - if (canPickaxeBlock(block, world)){ - if((block != Blocks.bedrock) && (block.getBlockHardness(world, X, Y, Z) != -1) && (block.getBlockHardness(world, X, Y, Z) <= 100) && (block != Blocks.water) && (block != Blocks.lava)){ - block.dropBlockAsItem(world, X, Y, Z, world.getBlockMetadata(X, Y, Z), 0); - world.setBlockToAir(X, Y, Z); - - } - else { - Utils.LOG_WARNING("Incorrect Tool for mining this block."); - } - } - } catch (NullPointerException e){ - - } - } - - public static void customMine(World world, String FACING, EntityPlayer aPlayer){ - - float DURABILITY_LOSS = 0; - if (!world.isRemote){ - int X = 0; - int Y = 0; - int Z = 0; - - if (FACING.equals("below") || FACING.equals("above")){ - - //Set Player Facing - X = (int) aPlayer.posX; - Utils.LOG_WARNING("Setting Variable X: "+X); - if (FACING.equals("above")){ - Z = (int) aPlayer.posY + 1; - Utils.LOG_WARNING("Setting Variable Y: "+Y); - } - else { - Z = (int) aPlayer.posY - 1; - Utils.LOG_WARNING("Setting Variable Y: "+Y);} - Z = (int) aPlayer.posZ; - Utils.LOG_WARNING("Setting Variable Z: "+Z); - - DURABILITY_LOSS = 0; - for(int i = -2; i < 3; i++) { - for(int j = -2; j < 3; j++) { - for(int k = -2; k < 3; k++) { -/*// float dur = calculateDurabilityLoss(world, X + i, Y + k, Z + j); -// DURABILITY_LOSS = (DURABILITY_LOSS + dur); -// Utils.LOG_WARNING("Added Loss: "+dur); -*/ removeBlockAndDropAsItem(world, X + i, Y + k, Z + j); - } - } - } - } - - else if (FACING.equals("facingEast") || FACING.equals("facingWest")){ - - //Set Player Facing - Z = (int) aPlayer.posZ; - Y = (int) aPlayer.posY; - if (FACING.equals("facingEast")){ - X = (int) aPlayer.posX + 1;} - else { - X = (int) aPlayer.posX - 1;} - - - DURABILITY_LOSS = 0; - for(int i = -1; i < 2; i++) { - for(int j = -1; j < 2; j++) { - for(int k = -1; k < 2; k++) { - /*float dur = calculateDurabilityLoss(world, X+k, Y + i, Z + j); - DURABILITY_LOSS = (DURABILITY_LOSS + dur); - Utils.LOG_WARNING("Added Loss: "+dur);*/ - removeBlockAndDropAsItem(world, X+k, Y + i, Z + j); - } - } - } - } - - else if (FACING.equals("facingNorth") || FACING.equals("facingSouth")){ - - //Set Player Facing - X = (int) aPlayer.posX; - Y = (int) aPlayer.posY; - - if (FACING.equals("facingNorth")){ - Z = (int) aPlayer.posZ + 1;} - else { - Z = (int) aPlayer.posZ - 1;} - - DURABILITY_LOSS = 0; - for(int i = -1; i < 2; i++) { - for(int j = -1; j < 2; j++) { - for(int k = -1; k < 2; k++) { - /*float dur = calculateDurabilityLoss(world, X + j, Y + i, Z+k); - DURABILITY_LOSS = (DURABILITY_LOSS + dur); - Utils.LOG_WARNING("Added Loss: "+dur);*/ - removeBlockAndDropAsItem(world, X + j, Y + i, Z+k); - } - } - } - } - - //Set Durability damage to the item - if (durabilityDamage == true){ - Utils.LOG_WARNING("Total Loss: "+(int)DURABILITY_LOSS); - if (stack.getItemDamage() < (stack.getMaxDamage()-DURABILITY_LOSS)){ - stack.damageItem((int) DURABILITY_LOSS, aPlayer); - } - } - DURABILITY_LOSS = 0; - } - } - - - public static boolean getBlockType(Block block){ - final String LIQUID = "liquid"; - final String BLOCK = "block"; - final String ORE = "ore"; - final String AIR = "air"; - String blockClass = ""; - - try { - blockClass = block.getClass().toString().toLowerCase(); - Utils.LOG_WARNING(blockClass); - if (blockClass.toLowerCase().contains(LIQUID)){ - Utils.LOG_WARNING(block.toString()+" is a Liquid."); - return false; - } - else if (blockClass.toLowerCase().contains(ORE)){ - Utils.LOG_WARNING(block.toString()+" is an Ore."); - return true; - } - else if (blockClass.toLowerCase().contains(AIR)){ - Utils.LOG_WARNING(block.toString()+" is Air."); - return false; - } - else if (blockClass.toLowerCase().contains(BLOCK)){ - Utils.LOG_WARNING(block.toString()+" is a block of some kind."); - return false; - } - else { - Utils.LOG_WARNING(block.toString()+" is mystery."); - return false; - } - } - catch(NullPointerException e){ - return false; - } - } - - -} diff --git a/src/Java/miscutil/core/util/UtilsItems.java b/src/Java/miscutil/core/util/UtilsItems.java new file mode 100644 index 0000000000..8d848fc914 --- /dev/null +++ b/src/Java/miscutil/core/util/UtilsItems.java @@ -0,0 +1,186 @@ +package miscutil.core.util; + +import gregtech.api.util.GT_OreDictUnificator; + +import java.util.ArrayList; + +import miscutil.core.handler.registration.RegistrationHandler; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraftforge.oredict.ShapedOreRecipe; +import cpw.mods.fml.common.registry.GameRegistry; + +public class UtilsItems { + + public static ItemStack getItemStackOfItem(Boolean modToCheck, String mod_itemname_meta){ + if (modToCheck){ + try{ + Item em = null; + + Item em1 = Utils.getItem(mod_itemname_meta); + Utils.LOG_WARNING("Found: "+em1.toString()); + if (!em1.equals(null)){ + em = em1; + } + else { + em = null; + return null; + } + if (!em.equals(null)){ + ItemStack returnStack = new ItemStack(em,1,16); + return returnStack; + } + Utils.LOG_WARNING(mod_itemname_meta+" not found."); + return null; + } catch (NullPointerException e) { + Utils.LOG_ERROR(mod_itemname_meta+" not found. [NULL]"); + return null; + } + } + return null; + } + + public static void getItemForOreDict(String FQRN, String oreDictName, String itemName, int meta){ + try { + Item em = null; + Item em1 = Utils.getItem(FQRN); + Utils.LOG_WARNING("Found: "+em1.getUnlocalizedName()+":"+meta); + if (em1 != null){ + em = em1; + } + if (em != null){ + + ItemStack metaStack = new ItemStack(em,1,meta); + GT_OreDictUnificator.registerOre(oreDictName, metaStack); + + /*ItemStack itemStackWithMeta = new ItemStack(em,1,meta); + GT_OreDictUnificator.registerOre(oreDictName, new ItemStack(itemStackWithMeta.getItem()));*/ + } + } catch (NullPointerException e) { + Utils.LOG_ERROR(itemName+" not found. [NULL]"); + } + } + + public static void recipeBuilder(Object slot_1, Object slot_2, Object slot_3, Object slot_4, Object slot_5, Object slot_6, Object slot_7, Object slot_8, Object slot_9, ItemStack resultItem){ + + ArrayList validSlots = new ArrayList(); + + //, String lineFirst, String lineSecond, String lineThird + Utils.LOG_INFO("Trying to add a recipe for "+resultItem.toString()); + String a,b,c,d,e,f,g,h,i; + //ItemStack empty = new ItemStack(Blocks.air); + if (slot_1 == null){ a = " ";} else { a = "1";validSlots.add('1');validSlots.add(slot_1);} + Utils.LOG_WARNING(a); + if (slot_2 == null){ b = " ";} else { b = "2";validSlots.add('2');validSlots.add(slot_2);} + Utils.LOG_WARNING(b); + if (slot_3 == null){ c = " ";} else { c = "3";validSlots.add('3');validSlots.add(slot_3);} + Utils.LOG_WARNING(c); + if (slot_4 == null){ d = " ";} else { d = "4";validSlots.add('4');validSlots.add(slot_4);} + Utils.LOG_WARNING(d); + if (slot_5 == null){ e = " ";} else { e = "5";validSlots.add('5');validSlots.add(slot_5);} + Utils.LOG_WARNING(e); + if (slot_6 == null){ f = " ";} else { f = "6";validSlots.add('6');validSlots.add(slot_6);} + Utils.LOG_WARNING(f); + if (slot_7 == null){ g = " ";} else { g = "7";validSlots.add('7');validSlots.add(slot_7);} + Utils.LOG_WARNING(g); + if (slot_8 == null){ h = " ";} else { h = "8";validSlots.add('8');validSlots.add(slot_8);} + Utils.LOG_WARNING(h); + if (slot_9 == null){ i = " ";} else { i = "9";validSlots.add('9');validSlots.add(slot_9);} + Utils.LOG_WARNING(i); + + + Utils.LOG_ERROR("_______"); + String lineOne = a+b+c; + Utils.LOG_ERROR("|"+a+"|"+b+"|"+c+"|"); + Utils.LOG_ERROR("_______"); + String lineTwo = d+e+f; + Utils.LOG_ERROR("|"+d+"|"+e+"|"+f+"|"); + Utils.LOG_ERROR("_______"); + String lineThree = g+h+i; + Utils.LOG_ERROR("|"+g+"|"+h+"|"+i+"|"); + Utils.LOG_ERROR("_______"); + + validSlots.add(0, lineOne); + validSlots.add(1, lineTwo); + validSlots.add(2, lineThree); + Boolean AadvancedLog = true; + if (AadvancedLog){ + int j = 0; + int l = validSlots.size(); + Utils.LOG_WARNING("l:"+l); + while (j <= l) { + Utils.LOG_WARNING("j:"+j); + if (j <= 2){ + Utils.LOG_WARNING("ArrayList Values: "+validSlots.get(j)); + Utils.LOG_WARNING("Adding 1."); + j++; + } + else if (j >= 3){ + Utils.LOG_WARNING("ArrayList Values: '"+validSlots.get(j)+"' "+validSlots.get(j+1)); + if (j < (l-2)){ + Utils.LOG_WARNING("Adding 2."); + j=j+2; + } + else { + Utils.LOG_WARNING("Done iteration."); + break; + } + } + else if (j == l){ + Utils.LOG_WARNING("Done iteration."); + break; + } + if (validSlots.get(j) instanceof String || validSlots.get(j) instanceof ItemStack){ + //Utils.LOG_WARNING("Is Valid: "+validSlots.get(j)); + } + } + } + + try { + /*Utils.LOG_WARNING("validSlots to array: "+validSlots.toArray()); + Object[] validSlotsArray = (Object[]) validSlots.toArray(); + + for(int j = 0; j < validSlotsArray.length; j++) + { + Utils.LOG_ERROR(""+validSlotsArray[j]); + }*/ + + GameRegistry.addRecipe(new ShapedOreRecipe(resultItem.copy(), (Object[]) validSlots.toArray())); + Utils.LOG_INFO("Success! Added a recipe for "+resultItem.toString()); + RegistrationHandler.recipesSuccess++; + /*try { + try { + try { + //Code + } + catch (NullPointerException | ClassCastException r){ + Utils.LOG_WARNING("@@@: Invalid Recipe detected for: "+resultItem.getUnlocalizedName()); + RegistrationHandler.recipesFailed++; + r.printStackTrace(); + //System.exit(1); + } + } + catch (NullPointerException o){ + + Utils.LOG_WARNING("@@@: Invalid Recipe detected for: "+resultItem.getUnlocalizedName()); + o.printStackTrace(); + RegistrationHandler.recipesFailed++; + //System.exit(1); + } + } + catch (ClassCastException r){ + Utils.LOG_WARNING("@@@: Casting to ObjectArray Failed :("); + }*/ + } + catch(NullPointerException | ClassCastException k){ + k.getMessage(); + k.getClass(); + k.printStackTrace(); + k.getLocalizedMessage(); + Utils.LOG_WARNING("@@@: Invalid Recipe detected for: "+resultItem.getUnlocalizedName()); + RegistrationHandler.recipesFailed++; + //System.exit(1); + } + } + +} diff --git a/src/Java/miscutil/core/util/UtilsMining.java b/src/Java/miscutil/core/util/UtilsMining.java new file mode 100644 index 0000000000..4c6ef7cda9 --- /dev/null +++ b/src/Java/miscutil/core/util/UtilsMining.java @@ -0,0 +1,179 @@ +package miscutil.core.util; + +import net.minecraft.block.Block; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.init.Blocks; +import net.minecraft.item.ItemStack; +import net.minecraft.world.World; + +public class UtilsMining { + + private static boolean durabilityDamage = false; + private static ItemStack stack; + + public static Boolean canPickaxeBlock(Block currentBlock, World currentWorld){ + String correctTool = ""; + if (!currentWorld.isRemote){ + try { + correctTool = currentBlock.getHarvestTool(0); + //Utils.LOG_WARNING(correctTool); + if (correctTool.equals("pickaxe")){ + return true;} + } catch (NullPointerException e){ + return false;} + } + return false; + } + + private static void removeBlockAndDropAsItem(World world, int X, int Y, int Z){ + try { + Block block = world.getBlock(X, Y, Z); + if (canPickaxeBlock(block, world)){ + if((block != Blocks.bedrock) && (block.getBlockHardness(world, X, Y, Z) != -1) && (block.getBlockHardness(world, X, Y, Z) <= 100) && (block != Blocks.water) && (block != Blocks.lava)){ + block.dropBlockAsItem(world, X, Y, Z, world.getBlockMetadata(X, Y, Z), 0); + world.setBlockToAir(X, Y, Z); + + } + else { + Utils.LOG_WARNING("Incorrect Tool for mining this block."); + } + } + } catch (NullPointerException e){ + + } + } + + public static void customMine(World world, String FACING, EntityPlayer aPlayer){ + + float DURABILITY_LOSS = 0; + if (!world.isRemote){ + int X = 0; + int Y = 0; + int Z = 0; + + if (FACING.equals("below") || FACING.equals("above")){ + + //Set Player Facing + X = (int) aPlayer.posX; + Utils.LOG_WARNING("Setting Variable X: "+X); + if (FACING.equals("above")){ + Z = (int) aPlayer.posY + 1; + Utils.LOG_WARNING("Setting Variable Y: "+Y); + } + else { + Z = (int) aPlayer.posY - 1; + Utils.LOG_WARNING("Setting Variable Y: "+Y);} + Z = (int) aPlayer.posZ; + Utils.LOG_WARNING("Setting Variable Z: "+Z); + + DURABILITY_LOSS = 0; + for(int i = -2; i < 3; i++) { + for(int j = -2; j < 3; j++) { + for(int k = -2; k < 3; k++) { +/*// float dur = calculateDurabilityLoss(world, X + i, Y + k, Z + j); +// DURABILITY_LOSS = (DURABILITY_LOSS + dur); +// Utils.LOG_WARNING("Added Loss: "+dur); +*/ removeBlockAndDropAsItem(world, X + i, Y + k, Z + j); + } + } + } + } + + else if (FACING.equals("facingEast") || FACING.equals("facingWest")){ + + //Set Player Facing + Z = (int) aPlayer.posZ; + Y = (int) aPlayer.posY; + if (FACING.equals("facingEast")){ + X = (int) aPlayer.posX + 1;} + else { + X = (int) aPlayer.posX - 1;} + + + DURABILITY_LOSS = 0; + for(int i = -1; i < 2; i++) { + for(int j = -1; j < 2; j++) { + for(int k = -1; k < 2; k++) { + /*float dur = calculateDurabilityLoss(world, X+k, Y + i, Z + j); + DURABILITY_LOSS = (DURABILITY_LOSS + dur); + Utils.LOG_WARNING("Added Loss: "+dur);*/ + removeBlockAndDropAsItem(world, X+k, Y + i, Z + j); + } + } + } + } + + else if (FACING.equals("facingNorth") || FACING.equals("facingSouth")){ + + //Set Player Facing + X = (int) aPlayer.posX; + Y = (int) aPlayer.posY; + + if (FACING.equals("facingNorth")){ + Z = (int) aPlayer.posZ + 1;} + else { + Z = (int) aPlayer.posZ - 1;} + + DURABILITY_LOSS = 0; + for(int i = -1; i < 2; i++) { + for(int j = -1; j < 2; j++) { + for(int k = -1; k < 2; k++) { + /*float dur = calculateDurabilityLoss(world, X + j, Y + i, Z+k); + DURABILITY_LOSS = (DURABILITY_LOSS + dur); + Utils.LOG_WARNING("Added Loss: "+dur);*/ + removeBlockAndDropAsItem(world, X + j, Y + i, Z+k); + } + } + } + } + + //Set Durability damage to the item + if (durabilityDamage == true){ + Utils.LOG_WARNING("Total Loss: "+(int)DURABILITY_LOSS); + if (stack.getItemDamage() < (stack.getMaxDamage()-DURABILITY_LOSS)){ + stack.damageItem((int) DURABILITY_LOSS, aPlayer); + } + } + DURABILITY_LOSS = 0; + } + } + + + public static boolean getBlockType(Block block){ + final String LIQUID = "liquid"; + final String BLOCK = "block"; + final String ORE = "ore"; + final String AIR = "air"; + String blockClass = ""; + + try { + blockClass = block.getClass().toString().toLowerCase(); + Utils.LOG_WARNING(blockClass); + if (blockClass.toLowerCase().contains(LIQUID)){ + Utils.LOG_WARNING(block.toString()+" is a Liquid."); + return false; + } + else if (blockClass.toLowerCase().contains(ORE)){ + Utils.LOG_WARNING(block.toString()+" is an Ore."); + return true; + } + else if (blockClass.toLowerCase().contains(AIR)){ + Utils.LOG_WARNING(block.toString()+" is Air."); + return false; + } + else if (blockClass.toLowerCase().contains(BLOCK)){ + Utils.LOG_WARNING(block.toString()+" is a block of some kind."); + return false; + } + else { + Utils.LOG_WARNING(block.toString()+" is mystery."); + return false; + } + } + catch(NullPointerException e){ + return false; + } + } + + +} diff --git a/src/Java/miscutil/core/util/VanillaChatCommandSender.java b/src/Java/miscutil/core/util/VanillaChatCommandSender.java new file mode 100644 index 0000000000..76e80204de --- /dev/null +++ b/src/Java/miscutil/core/util/VanillaChatCommandSender.java @@ -0,0 +1,35 @@ +package miscutil.core.util; + +import net.minecraft.util.ChunkCoordinates; +import net.minecraft.util.IChatComponent; +import net.minecraft.world.World; + +public interface VanillaChatCommandSender { + + /** + * Gets the name of this command sender (usually username, but possibly "Rcon") + */ + String getCommandSenderName(); + + IChatComponent func_145748_c_(); + + /** + * Notifies this sender of some sort of information. This is for messages intended to display to the user. Used + * for typical output (like "you asked for whether or not this game rule is set, so here's your answer"), warnings + * (like "I fetched this block for you by ID, but I'd like you to know that every time you do this, I die a little + * inside"), and errors (like "it's not called iron_pixacke, silly"). + */ + void addChatMessage(IChatComponent p_145747_1_); + + /** + * Returns true if the command sender is allowed to use the given command. + */ + boolean canCommandSenderUseCommand(int p_70003_1_, String p_70003_2_); + + /** + * Return the position for this command sender. + */ + ChunkCoordinates getPlayerCoordinates(); + + World getEntityWorld(); + } -- cgit