aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlkalus <draknyte1@hotmail.com>2017-10-05 12:19:14 +1000
committerAlkalus <draknyte1@hotmail.com>2017-10-05 12:19:14 +1000
commit6299f8b8496f3eeb9354161e1ead8ee457131e18 (patch)
tree4e60a8f3f4d2bc8fd8f3f383d03af24d6b9afcc6
parent04cb1921bd93e91fd526800d0cc36ff4b1df616c (diff)
downloadGT5-Unofficial-6299f8b8496f3eeb9354161e1ead8ee457131e18.tar.gz
GT5-Unofficial-6299f8b8496f3eeb9354161e1ead8ee457131e18.tar.bz2
GT5-Unofficial-6299f8b8496f3eeb9354161e1ead8ee457131e18.zip
$ Fixed #137, also resolves #138 & resolves #139.
% Commented out something related to Forestry.
-rw-r--r--src/Java/gtPlusPlus/GTplusplus.java12
-rw-r--r--src/Java/gtPlusPlus/core/handler/events/BlockEventHandler.java39
-rw-r--r--src/Java/gtPlusPlus/xmod/forestry/HANDLER_FR.java6
3 files changed, 34 insertions, 23 deletions
diff --git a/src/Java/gtPlusPlus/GTplusplus.java b/src/Java/gtPlusPlus/GTplusplus.java
index 4cf754e856..aa9975404b 100644
--- a/src/Java/gtPlusPlus/GTplusplus.java
+++ b/src/Java/gtPlusPlus/GTplusplus.java
@@ -8,6 +8,7 @@ import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.File;
import java.lang.reflect.Field;
+import java.util.ArrayList;
import java.util.Collection;
import java.util.HashSet;
@@ -24,9 +25,11 @@ import gregtech.api.util.EmptyRecipeMap;
import gregtech.api.util.GT_Recipe;
import gregtech.api.util.GT_Recipe.GT_Recipe_Map;
import gregtech.api.util.Recipe_GT.Gregtech_Recipe_Map;
+import gtPlusPlus.core.block.ModBlocks;
import gtPlusPlus.core.commands.CommandMath;
import gtPlusPlus.core.common.CommonProxy;
import gtPlusPlus.core.handler.Recipes.RegistrationHandler;
+import gtPlusPlus.core.handler.events.BlockEventHandler;
import gtPlusPlus.core.handler.events.LoginEventHandler;
import gtPlusPlus.core.item.general.RF2EU_Battery;
import gtPlusPlus.core.lib.CORE;
@@ -38,8 +41,11 @@ import gtPlusPlus.core.util.reflect.ReflectionUtils;
import gtPlusPlus.xmod.gregtech.common.Meta_GT_Proxy;
import gtPlusPlus.xmod.gregtech.common.blocks.textures.TexturesGtBlock;
import gtPlusPlus.xmod.gregtech.common.blocks.textures.TexturesGtTools;
+import net.minecraft.item.Item;
+import net.minecraft.item.ItemStack;
import net.minecraft.launchwrapper.Launch;
import net.minecraftforge.common.config.Configuration;
+import net.minecraftforge.oredict.OreDictionary;
@MCVersion(value = "1.7.10")
@Mod(modid = CORE.MODID, name = CORE.name, version = CORE.VERSION, dependencies = "required-after:Forge; after:PlayerAPI; after:dreamcraft; after:IC2; after:ihl; after:psychedelicraft; after:gregtech; after:Forestry; after:MagicBees; after:CoFHCore; after:Growthcraft; after:Railcraft; after:CompactWindmills; after:ForbiddenMagic; after:MorePlanet; after:PneumaticCraft; after:ExtraUtilities; after:Thaumcraft; after:rftools; after:simplyjetpacks; after:BigReactors; after:EnderIO;")
@@ -239,6 +245,12 @@ public class GTplusplus implements ActionListener {
public void init(final FMLInitializationEvent event) {
proxy.init(event);
proxy.registerNetworkStuff();
+
+ //Set Variables for Fluorite Block handling
+ BlockEventHandler.oreLimestone = OreDictionary.getOres("oreLimestone");
+ BlockEventHandler.blockLimestone = OreDictionary.getOres("limestone");
+ BlockEventHandler.fluoriteOre = ItemUtils.getSimpleStack(Item.getItemFromBlock(ModBlocks.blockOreFluorite));
+
}
// Post-Init
diff --git a/src/Java/gtPlusPlus/core/handler/events/BlockEventHandler.java b/src/Java/gtPlusPlus/core/handler/events/BlockEventHandler.java
index 26b559e926..0c8235a6d7 100644
--- a/src/Java/gtPlusPlus/core/handler/events/BlockEventHandler.java
+++ b/src/Java/gtPlusPlus/core/handler/events/BlockEventHandler.java
@@ -7,23 +7,22 @@ import java.util.ArrayList;
import java.util.Random;
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
-import gtPlusPlus.core.block.ModBlocks;
import gtPlusPlus.core.item.ModItems;
import gtPlusPlus.core.lib.LoadedMods;
import gtPlusPlus.core.util.Utils;
-import gtPlusPlus.core.util.item.ItemUtils;
import gtPlusPlus.core.util.math.MathUtils;
import net.minecraft.block.Block;
import net.minecraft.init.Blocks;
-import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraftforge.event.entity.living.LivingDropsEvent;
import net.minecraftforge.event.entity.player.PlayerInteractEvent;
import net.minecraftforge.event.world.BlockEvent;
-import net.minecraftforge.oredict.OreDictionary;
public class BlockEventHandler {
private final Random random = new Random();
+ public static ArrayList<ItemStack> oreLimestone;
+ public static ArrayList<ItemStack> blockLimestone;
+ public static ItemStack fluoriteOre;
@SubscribeEvent
public void onBlockLeftClicked(final PlayerInteractEvent event) {
@@ -69,13 +68,12 @@ public class BlockEventHandler {
}
- ArrayList<ItemStack> oreLimestone = OreDictionary.getOres("oreLimestone");
- ArrayList<ItemStack> blockLimestone = OreDictionary.getOres("limestone");
- ItemStack fluoriteOre = ItemUtils.getSimpleStack(Item.getItemFromBlock(ModBlocks.blockOreFluorite));
+
//Used to handle Thaumcraft Shards when TC is not installed.
@SubscribeEvent
public void harvestDrops(final BlockEvent.HarvestDropsEvent event) {
+ try {
//Spawn Dull Shards (Can spawn from Tree Logs, Grass or Stone. Stone going to be the most common source.)
if (((event.block == Blocks.stone) || (event.block == Blocks.sandstone) || (event.block == Blocks.log) || (event.block == Blocks.log2) || (event.block == Blocks.grass))
&& !LoadedMods.Thaumcraft && (chanceToDropDrainedShard != 0)) {
@@ -110,18 +108,18 @@ public class BlockEventHandler {
//Spawns Fluorite from Lime Stone
if (chanceToDropFluoriteOre != 0){
- if (!this.oreLimestone.isEmpty() || !this.blockLimestone.isEmpty()){
+ if (!oreLimestone.isEmpty() || !blockLimestone.isEmpty()){
ArrayList<Block> mBlockTypes = new ArrayList<Block>();
- if (!this.oreLimestone.isEmpty()){
- for (int i=0;i<this.oreLimestone.size();i++){
- mBlockTypes.add(Block.getBlockFromItem(this.oreLimestone.get(i).getItem()));
+ if (!oreLimestone.isEmpty()){
+ for (int i=0;i<oreLimestone.size();i++){
+ mBlockTypes.add(Block.getBlockFromItem(oreLimestone.get(i).getItem()));
}
}
- if (!this.blockLimestone.isEmpty()){
- for (int i=0;i<this.blockLimestone.size();i++){
- if (!mBlockTypes.contains(Block.getBlockFromItem(this.oreLimestone.get(i).getItem()))){
- mBlockTypes.add(Block.getBlockFromItem(this.oreLimestone.get(i).getItem()));
+ if (!blockLimestone.isEmpty()){
+ for (int i=0;i<blockLimestone.size();i++){
+ if (!mBlockTypes.contains(Block.getBlockFromItem(blockLimestone.get(i).getItem()))){
+ mBlockTypes.add(Block.getBlockFromItem(blockLimestone.get(i).getItem()));
}
}
}
@@ -135,7 +133,7 @@ public class BlockEventHandler {
Utils.LOG_WARNING("3a - found "+temp.getUnlocalizedName());
if (MathUtils.randInt(1, chanceToDropFluoriteOre) == 1){
Utils.LOG_WARNING("4a");
- event.drops.add(this.fluoriteOre.copy());
+ event.drops.add(fluoriteOre.copy());
}
}
}
@@ -147,16 +145,21 @@ public class BlockEventHandler {
Utils.LOG_WARNING("1c");
if (MathUtils.randInt(1, chanceToDropFluoriteOre) == 1){
Utils.LOG_WARNING("2c");
- event.drops.add(this.fluoriteOre.copy());
+ event.drops.add(fluoriteOre.copy());
}
}
if (event.block == Blocks.sandstone){
if (MathUtils.randInt(1, chanceToDropFluoriteOre*20) == 1){
- event.drops.add(this.fluoriteOre.copy());
+ event.drops.add(fluoriteOre.copy());
}
}
}
+ }
+ catch (Throwable r){
+ Utils.LOG_INFO("Block Event Handler Failed. Please Report this to Alkalus.");
+ r.printStackTrace();
+ }
}
@SubscribeEvent
diff --git a/src/Java/gtPlusPlus/xmod/forestry/HANDLER_FR.java b/src/Java/gtPlusPlus/xmod/forestry/HANDLER_FR.java
index 71ccb5be51..66e65fe3a6 100644
--- a/src/Java/gtPlusPlus/xmod/forestry/HANDLER_FR.java
+++ b/src/Java/gtPlusPlus/xmod/forestry/HANDLER_FR.java
@@ -1,14 +1,10 @@
package gtPlusPlus.xmod.forestry;
import cpw.mods.fml.common.Optional;
-import cpw.mods.fml.common.registry.GameRegistry;
import forestry.core.blocks.BlockRegistry;
-import forestry.core.items.ItemBlockForestry;
import forestry.core.proxy.Proxies;
-import forestry.core.utils.StringUtil;
import gtPlusPlus.core.lib.CORE;
import gtPlusPlus.core.lib.LoadedMods;
-import gtPlusPlus.xmod.forestry.bees.blocks.BlockDenseBeeHouse;
import gtPlusPlus.xmod.forestry.bees.items.FR_ItemRegistry;
import gtPlusPlus.xmod.forestry.bees.recipe.FR_Gregtech_Recipes;
import net.minecraft.block.Block;
@@ -16,7 +12,7 @@ import net.minecraft.world.World;
public class HANDLER_FR extends BlockRegistry {
- public static BlockDenseBeeHouse apiculture;
+ //public static BlockDenseBeeHouse apiculture;
public static void preInit(){
if (LoadedMods.Forestry){