diff --git a/CraftTweakerWIKI.md b/CraftTweakerWIKI.md
index f7f2de1d25..11f30328e9 100644
--- a/CraftTweakerWIKI.md
+++ b/CraftTweakerWIKI.md
@@ -12,6 +12,9 @@ Removing of oreDict recipes is currently not supported.
mods.ntm.Assembler.addRecipe(IItemStack output, IItemStack[] inputs, int duration);
``mods.ntm.Assembler.addRecipe(, [*4, *6], 30);``
+mods.ntm.Assembler.replaceRecipe(IItemStack output, IItemStack[] inputs, int duration);
+``mods.ntm.Assembler.replaceRecipe(, [, ], 50);``
+
mods.ntm.Assembler.removeRecipe(IItemStack output);
``mods.ntm.Assembler.removeRecipe();``
diff --git a/build.gradle b/build.gradle
index 474197bf63..3e90084cff 100644
--- a/build.gradle
+++ b/build.gradle
@@ -24,7 +24,7 @@ apply plugin: 'net.minecraftforge.gradle'
apply plugin: 'eclipse'
apply plugin: 'maven-publish'
-version = '1.9.7'
+version = '1.9.8'
group = 'com.hbm' // http://maven.apache.org/guides/mini/guide-naming-conventions.html
archivesBaseName = 'NTM-Extended-1.12.2'
diff --git a/gradle.properties b/gradle.properties
index aa4f984357..2a394ac3f2 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -5,6 +5,6 @@ org.gradle.daemon=true
org.gradle.configureondemand=true
org.gradle.parallel=true
version_mc=1.12.2
-version=1.9.7
+version=1.9.8
version_jei=4.16.1.302
version_crafttweaker=4.1.14.521
diff --git a/src/main/java/com/hbm/blocks/ModBlocks.java b/src/main/java/com/hbm/blocks/ModBlocks.java
index c17a9377d0..4353c66342 100644
--- a/src/main/java/com/hbm/blocks/ModBlocks.java
+++ b/src/main/java/com/hbm/blocks/ModBlocks.java
@@ -75,6 +75,7 @@
import com.hbm.blocks.generic.BlockGoldSand;
import com.hbm.blocks.generic.BlockGrate;
import com.hbm.blocks.generic.BlockHazard;
+import com.hbm.blocks.generic.BlockHazardFuel;
import com.hbm.blocks.generic.BlockHazard.ExtDisplayEffect;
import com.hbm.blocks.generic.BlockHazardFalling;
import com.hbm.blocks.generic.BlockJungleCrate;
@@ -104,6 +105,7 @@
import com.hbm.blocks.generic.BlockRadResistantHazard;
import com.hbm.blocks.generic.BlockRailing;
import com.hbm.blocks.generic.BlockRotatablePillar;
+import com.hbm.blocks.generic.BlockRotatablePillarHazard;
import com.hbm.blocks.generic.BlockSmolder;
import com.hbm.blocks.generic.BlockStorageCrate;
import com.hbm.blocks.generic.BlockStorageCrateRadResistant;
@@ -243,10 +245,8 @@ public SoundEvent getBreakSound() {
//Generic blocks
public static final Block asphalt = new BlockBase(Material.ROCK, "asphalt").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(100.0F);
- public static final Block reinforced_brick = new BlockRadResistant(Material.ROCK, "reinforced_brick").setCreativeTab(MainRegistry.blockTab).setLightOpacity(15).setHardness(15.0F).setResistance(8000.0F);
public static final Block reinforced_glass = new BlockNTMGlass(Material.GLASS, BlockRenderLayer.CUTOUT, false, true, "reinforced_glass").setCreativeTab(MainRegistry.blockTab).setLightOpacity(0).setHardness(15.0F).setResistance(200.0F);
public static final Block reinforced_light = new BlockRadResistant(Material.ROCK, "reinforced_light").setCreativeTab(MainRegistry.blockTab).setLightOpacity(15).setLightLevel(1.0F).setHardness(15.0F).setResistance(300.0F);
- public static final Block reinforced_sand = new BlockBase(Material.ROCK, "reinforced_sand").setCreativeTab(MainRegistry.blockTab).setLightOpacity(15).setHardness(15.0F).setResistance(400.0F);
public static final Block reinforced_lamp_off = new ReinforcedLamp(Material.ROCK, false, "reinforced_lamp_off").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(300.0F);
public static final Block reinforced_lamp_on = new ReinforcedLamp(Material.ROCK, true, "reinforced_lamp_on").setCreativeTab(null).setHardness(15.0F).setResistance(300.0F);
public static final Block reinforced_stone = new BlockBase(Material.ROCK, "reinforced_stone").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(3000.0F);
@@ -255,9 +255,11 @@ public SoundEvent getBreakSound() {
public static final Block brick_concrete_cracked = new BlockBase(Material.ROCK, "brick_concrete_cracked").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(2000.0F);
public static final Block brick_concrete_broken = new BlockBase(Material.ROCK, "brick_concrete_broken").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(1500.0F);
public static final Block brick_concrete_marked = new BlockWriting(Material.ROCK, "brick_concrete_marked").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(1500.0F);
- public static final Block brick_light = new BlockBase(Material.ROCK, "brick_light").setCreativeTab(MainRegistry.blockTab).setLightOpacity(15).setHardness(15.0F).setResistance(1000.0F);
+ public static final Block reinforced_brick = new BlockRadResistant(Material.ROCK, "reinforced_brick").setCreativeTab(MainRegistry.blockTab).setLightOpacity(15).setHardness(15.0F).setResistance(8000.0F);
public static final Block brick_compound = new BlockRadResistant(Material.ROCK, "brick_compound").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(10000.0F);
+ public static final Block brick_light = new BlockBase(Material.ROCK, "brick_light").setCreativeTab(MainRegistry.blockTab).setLightOpacity(15).setHardness(15.0F).setResistance(1000.0F);
public static final Block brick_asbestos = new BlockOutgas(Material.ROCK, true, 20, true, "brick_asbestos").addAsbestos(8).toBlock().setHardness(15.0F).setCreativeTab(MainRegistry.blockTab).setResistance(1000.0F);
+ public static final Block reinforced_sand = new BlockBase(Material.ROCK, "reinforced_sand").setCreativeTab(MainRegistry.blockTab).setLightOpacity(15).setHardness(15.0F).setResistance(400.0F);
public static final Block brick_obsidian = new BlockBase(Material.ROCK, "brick_obsidian").setCreativeTab(MainRegistry.blockTab).setLightOpacity(15).setHardness(15.0F).setResistance(8000.0F);
public static final Block cmb_brick = new BlockBase(Material.ROCK, "cmb_brick").setCreativeTab(MainRegistry.blockTab).setHardness(25.0F).setResistance(6000.0F);
public static final Block cmb_brick_reinforced = new BlockRadResistant(Material.ROCK, "cmb_brick_reinforced").setCreativeTab(MainRegistry.blockTab).setHardness(25.0F).setResistance(60000.0F);
@@ -293,15 +295,15 @@ public SoundEvent getBreakSound() {
public static final Block tile_lab_broken = new BlockOutgas(Material.ROCK, true, 40, true, "tile_lab_broken").addAsbestos(6).toBlock().setCreativeTab(MainRegistry.blockTab).setHardness(1.0F).setResistance(20.0F);
//stairs
- public static final Block reinforced_brick_stairs = new BlockGenericStairs(reinforced_brick.getDefaultState(), "reinforced_brick_stairs").setCreativeTab(MainRegistry.blockTab).setLightOpacity(15).setHardness(15.0F).setResistance(6000.0F);
- public static final Block reinforced_sand_stairs = new BlockGenericStairs(reinforced_sand.getDefaultState(), "reinforced_sand_stairs").setCreativeTab(MainRegistry.blockTab).setLightOpacity(15).setHardness(15.0F).setResistance(300.0F);
public static final Block reinforced_stone_stairs = new BlockGenericStairs(reinforced_stone.getDefaultState(), "reinforced_stone_stairs").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(2250.0F);
public static final Block brick_concrete_stairs = new BlockGenericStairs(brick_concrete.getDefaultState(), "brick_concrete_stairs").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(4500.0F);
public static final Block brick_concrete_mossy_stairs = new BlockGenericStairs(brick_concrete_mossy.getDefaultState(), "brick_concrete_mossy_stairs").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(4500.0F);
public static final Block brick_concrete_cracked_stairs = new BlockGenericStairs(brick_concrete_cracked.getDefaultState(), "brick_concrete_cracked_stairs").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(1500.0F);
public static final Block brick_concrete_broken_stairs = new BlockGenericStairs(brick_concrete_broken.getDefaultState(), "brick_concrete_broken_stairs").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(1125.0F);
+ public static final Block reinforced_brick_stairs = new BlockGenericStairs(reinforced_brick.getDefaultState(), "reinforced_brick_stairs").setCreativeTab(MainRegistry.blockTab).setLightOpacity(15).setHardness(15.0F).setResistance(6000.0F);
public static final Block brick_compound_stairs = new BlockGenericStairs(brick_compound.getDefaultState(), "brick_compound_stairs").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(7500.0F);
public static final Block brick_asbestos_stairs = new BlockGenericStairs(brick_asbestos.getDefaultState(), "brick_asbestos_stairs").setCreativeTab(MainRegistry.blockTab).setResistance(750.0F);
+ public static final Block reinforced_sand_stairs = new BlockGenericStairs(reinforced_sand.getDefaultState(), "reinforced_sand_stairs").setCreativeTab(MainRegistry.blockTab).setLightOpacity(15).setHardness(15.0F).setResistance(300.0F);
public static final Block brick_obsidian_stairs = new BlockGenericStairs(brick_obsidian.getDefaultState(), "brick_obsidian_stairs").setCreativeTab(MainRegistry.blockTab).setLightOpacity(15).setHardness(15.0F).setResistance(6000.0F);
public static final Block cmb_brick_reinforced_stairs = new BlockGenericStairs(cmb_brick_reinforced.getDefaultState(), "cmb_brick_reinforced_stairs").setCreativeTab(MainRegistry.blockTab).setHardness(25.0F).setResistance(45000.0F);
public static final Block concrete_stairs = new BlockGenericStairs(concrete.getDefaultState(), "concrete_stairs").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(3000.0F);
@@ -332,15 +334,15 @@ public SoundEvent getBreakSound() {
public static final Block tile_lab_broken_stairs = new BlockGenericStairs(tile_lab_broken.getDefaultState(), "tile_lab_broken_stairs").setSoundType(SoundType.GLASS).setCreativeTab(MainRegistry.blockTab).setHardness(1.0F).setResistance(15.0F);
//slabs
- public static final Block reinforced_brick_slab = new BlockGenericSlab(Material.ROCK, false, "reinforced_brick_slab").setCreativeTab(MainRegistry.blockTab).setLightOpacity(15).setHardness(15.0F).setResistance(4000.0F);
- public static final Block reinforced_sand_slab = new BlockGenericSlab(Material.ROCK, false, "reinforced_sand_slab").setCreativeTab(MainRegistry.blockTab).setLightOpacity(15).setHardness(15.0F).setResistance(200.0F);
public static final Block reinforced_stone_slab = new BlockGenericSlab(Material.ROCK, false, "reinforced_stone_slab").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(1500.0F);
public static final Block brick_concrete_slab = new BlockGenericSlab(Material.ROCK, false, "brick_concrete_slab").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(3000.0F);
public static final Block brick_concrete_mossy_slab = new BlockGenericSlab(Material.ROCK, false, "brick_concrete_mossy_slab").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(3000.0F);
public static final Block brick_concrete_cracked_slab = new BlockGenericSlab(Material.ROCK, false, "brick_concrete_cracked_slab").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(1000.0F);
public static final Block brick_concrete_broken_slab = new BlockGenericSlab(Material.ROCK, false, "brick_concrete_broken_slab").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(750.0F);
+ public static final Block reinforced_brick_slab = new BlockGenericSlab(Material.ROCK, false, "reinforced_brick_slab").setCreativeTab(MainRegistry.blockTab).setLightOpacity(15).setHardness(15.0F).setResistance(4000.0F);
public static final Block brick_compound_slab = new BlockGenericSlab(Material.ROCK, false, "brick_compound_slab").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(5000.0F);
public static final Block brick_asbestos_slab = new BlockGenericSlab(Material.ROCK, false, "brick_asbestos_slab").setCreativeTab(MainRegistry.blockTab).setResistance(500.0F);
+ public static final Block reinforced_sand_slab = new BlockGenericSlab(Material.ROCK, false, "reinforced_sand_slab").setCreativeTab(MainRegistry.blockTab).setLightOpacity(15).setHardness(15.0F).setResistance(200.0F);
public static final Block brick_obsidian_slab = new BlockGenericSlab(Material.ROCK, false, "brick_obsidian_slab").setCreativeTab(MainRegistry.blockTab).setLightOpacity(15).setHardness(15.0F).setResistance(4000.0F);
public static final Block cmb_brick_reinforced_slab = new BlockGenericSlab(Material.ROCK, false, "cmb_brick_reinforced_slab").setCreativeTab(MainRegistry.blockTab).setHardness(25.0F).setResistance(30000.0F);
public static final Block concrete_slab = new BlockGenericSlab(Material.ROCK, false, "concrete_slab").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(2000.0F);
@@ -377,9 +379,9 @@ public SoundEvent getBreakSound() {
public static final Block block_electrical_scrap = new BlockFallingBase(Material.IRON, "block_electrical_scrap", SoundType.METAL).setCreativeTab(MainRegistry.blockTab).setHardness(2.5F).setResistance(5.0F);
//Ores
- public static final Block ore_uranium = new BlockOre(Material.ROCK, "ore_uranium", 2).addRadiation(ItemHazard.ore * ItemHazard.u).toBlock().setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.resourceTab);
- public static final Block ore_uranium_scorched = new BlockOre(Material.ROCK, "ore_uranium_scorched", 2).addRadiation(0.5F).toBlock().setCreativeTab(MainRegistry.resourceTab).setHardness(5.0F).setResistance(10.0F);
- public static final Block ore_schrabidium = new BlockOre(Material.ROCK, "ore_schrabidium", 3).addRadiation(ItemHazard.ore * ItemHazard.sa326).addBlinding().toBlock().setHardness(15.0F).setResistance(600.0F).setCreativeTab(MainRegistry.resourceTab);
+ public static final Block ore_uranium = new BlockOutgas(Material.ROCK, true, 20, true, "ore_uranium").addRadiation(ItemHazard.ore * ItemHazard.u).toBlock().setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.resourceTab);
+ public static final Block ore_uranium_scorched = new BlockOutgas(Material.ROCK, true, 15, true, "ore_uranium_scorched").addRadiation(0.5F).toBlock().setCreativeTab(MainRegistry.resourceTab).setHardness(5.0F).setResistance(10.0F);
+ public static final Block ore_schrabidium = new BlockOre(Material.ROCK, "ore_schrabidium", 3, 300).addRadiation(ItemHazard.ore * ItemHazard.sa326).addBlinding().toBlock().setHardness(15.0F).setResistance(600.0F).setCreativeTab(MainRegistry.resourceTab);
public static final Block ore_thorium = new BlockOre(Material.ROCK, "ore_thorium", 2).addRadiation(ItemHazard.ore * ItemHazard.th232).toBlock().setCreativeTab(MainRegistry.resourceTab).setHardness(5.0F).setResistance(10.0F);
@@ -393,25 +395,26 @@ public SoundEvent getBreakSound() {
public static final Block ore_lead = new BlockOre(Material.ROCK, "ore_lead", 2).setCreativeTab(MainRegistry.resourceTab).setHardness(5.0F).setResistance(10.0F);
public static final Block ore_beryllium = new BlockOre(Material.ROCK, "ore_beryllium", 2).setCreativeTab(MainRegistry.resourceTab).setHardness(5.0F).setResistance(15.0F);
public static final Block ore_lignite = new BlockOre(Material.ROCK, "ore_lignite", 0).setCreativeTab(MainRegistry.resourceTab).setHardness(5.0F).setResistance(15.0F);
- public static final Block ore_asbestos = new BlockOre(Material.ROCK, "ore_asbestos", 1).addAsbestos(5).toBlock().setCreativeTab(MainRegistry.resourceTab).setHardness(5.0F).setResistance(15.0F);
- public static final Block ore_rare = new BlockOre(Material.ROCK, "ore_rare", 3).setCreativeTab(MainRegistry.resourceTab).setHardness(5.0F).setResistance(10.0F);
+ public static final Block ore_asbestos = new BlockOre(Material.ROCK, "ore_asbestos", 1, 6).addAsbestos(5).toBlock().setCreativeTab(MainRegistry.resourceTab).setHardness(5.0F).setResistance(15.0F);
+ public static final Block ore_rare = new BlockOre(Material.ROCK, "ore_rare", 2, 12).setCreativeTab(MainRegistry.resourceTab).setHardness(5.0F).setResistance(10.0F);
public static final Block ore_coal_oil = new BlockCoalOil(Material.ROCK, "ore_coal_oil").setCreativeTab(MainRegistry.resourceTab).setHardness(5.0F).setResistance(15.0F);
public static final Block ore_coal_oil_burning = new BlockCoalBurning(Material.ROCK, "ore_coal_oil_burning").setCreativeTab(MainRegistry.resourceTab).setLightLevel(10F/15F).setHardness(5.0F).setResistance(15.0F);
public static final Block cluster_iron = new BlockCluster(Material.ROCK, "cluster_iron").setCreativeTab(MainRegistry.resourceTab).setHardness(5.0F).setResistance(35.0F);
public static final Block cluster_titanium = new BlockCluster(Material.ROCK, "cluster_titanium").setCreativeTab(MainRegistry.resourceTab).setHardness(5.0F).setResistance(35.0F);
public static final Block cluster_aluminium = new BlockCluster(Material.ROCK, "cluster_aluminium").setCreativeTab(MainRegistry.resourceTab).setHardness(5.0F).setResistance(35.0F);
-
- public static final Block ore_cobalt = new BlockOre(Material.ROCK, "ore_cobalt", 3).setCreativeTab(MainRegistry.resourceTab).setHardness(5.0F).setResistance(10.0F);
+ public static final Block cluster_copper = new BlockCluster(Material.ROCK, "cluster_copper").setCreativeTab(MainRegistry.resourceTab).setHardness(5.0F).setResistance(35.0F);
+
+ public static final Block ore_cobalt = new BlockOre(Material.ROCK, "ore_cobalt", 3, 15).setCreativeTab(MainRegistry.resourceTab).setHardness(5.0F).setResistance(10.0F);
public static final Block ore_cinnebar = new BlockOre(Material.ROCK, "ore_cinnebar", 1).setCreativeTab(MainRegistry.resourceTab).setHardness(5.0F).setResistance(10.0F);
- public static final Block ore_coltan = new BlockOre(Material.ROCK, "ore_coltan", 3).setCreativeTab(MainRegistry.resourceTab).setHardness(15.0F).setResistance(10.0F);
+ public static final Block ore_coltan = new BlockOre(Material.ROCK, "ore_coltan", 3, 20).setCreativeTab(MainRegistry.resourceTab).setHardness(15.0F).setResistance(10.0F);
- public static final Block ore_reiium = new BlockOre(Material.ROCK, "ore_reiium", 4).setCreativeTab(MainRegistry.resourceTab).setHardness(5.0F).setResistance(10.0F);
- public static final Block ore_weidanium = new BlockOre(Material.ROCK, "ore_weidanium", 4).setCreativeTab(MainRegistry.resourceTab).setHardness(5.0F).setResistance(10.0F);
- public static final Block ore_australium = new BlockOre(Material.ROCK, "ore_australium", 4).setCreativeTab(MainRegistry.resourceTab).setHardness(5.0F).setResistance(10.0F);
- public static final Block ore_verticium = new BlockOre(Material.ROCK, "ore_verticium", 4).setCreativeTab(MainRegistry.resourceTab).setHardness(5.0F).setResistance(10.0F);
- public static final Block ore_unobtainium = new BlockOre(Material.ROCK, "ore_unobtainium", 4).setCreativeTab(MainRegistry.resourceTab).setHardness(5.0F).setResistance(10.0F);
- public static final Block ore_daffergon = new BlockOre(Material.ROCK, "ore_daffergon", 4).setCreativeTab(MainRegistry.resourceTab).setHardness(5.0F).setResistance(10.0F);
+ public static final Block ore_reiium = new BlockOre(Material.ROCK, "ore_reiium", 4, 100).setCreativeTab(MainRegistry.resourceTab).setHardness(5.0F).setResistance(10.0F);
+ public static final Block ore_weidanium = new BlockOre(Material.ROCK, "ore_weidanium", 4, 100).setCreativeTab(MainRegistry.resourceTab).setHardness(5.0F).setResistance(10.0F);
+ public static final Block ore_australium = new BlockOre(Material.ROCK, "ore_australium", 4, 100).setCreativeTab(MainRegistry.resourceTab).setHardness(5.0F).setResistance(10.0F);
+ public static final Block ore_verticium = new BlockOre(Material.ROCK, "ore_verticium", 4, 100).setCreativeTab(MainRegistry.resourceTab).setHardness(5.0F).setResistance(10.0F);
+ public static final Block ore_unobtainium = new BlockOre(Material.ROCK, "ore_unobtainium", 4, 100).setCreativeTab(MainRegistry.resourceTab).setHardness(5.0F).setResistance(10.0F);
+ public static final Block ore_daffergon = new BlockOre(Material.ROCK, "ore_daffergon", 4, 100).setCreativeTab(MainRegistry.resourceTab).setHardness(5.0F).setResistance(10.0F);
public static final Block stone_depth = new BlockDepth("stone_depth").setCreativeTab(MainRegistry.resourceTab);
public static final Block ore_depth_cinnebar = new BlockDepthOre("ore_depth_cinnebar").setCreativeTab(MainRegistry.resourceTab);
public static final Block ore_depth_zirconium = new BlockDepthOre("ore_depth_zirconium").setCreativeTab(MainRegistry.resourceTab);
@@ -431,8 +434,8 @@ public SoundEvent getBreakSound() {
public static final Block stone_gneiss = new BlockBase(Material.ROCK, "stone_gneiss").setCreativeTab(MainRegistry.resourceTab).setHardness(1.5F).setResistance(10.0F);
public static final Block ore_gneiss_iron = new BlockOre(Material.ROCK, "ore_gneiss_iron", 1).setCreativeTab(MainRegistry.resourceTab).setHardness(1.5F).setResistance(10.0F);
public static final Block ore_gneiss_gold = new BlockOre(Material.ROCK, "ore_gneiss_gold", 2).setCreativeTab(MainRegistry.resourceTab).setHardness(1.5F).setResistance(10.0F);
- public static final Block ore_gneiss_uranium = new BlockOre(Material.ROCK, "ore_gneiss_uranium", 2).addRadiation(ItemHazard.ore * ItemHazard.u).toBlock().setCreativeTab(MainRegistry.resourceTab).setHardness(1.5F).setResistance(10.0F);
- public static final Block ore_gneiss_uranium_scorched = new BlockOre(Material.ROCK, "ore_gneiss_uranium_scorched", 2).addRadiation(1.0F).toBlock().setCreativeTab(MainRegistry.resourceTab).setHardness(1.5F).setResistance(10.0F);
+ public static final Block ore_gneiss_uranium = new BlockOutgas(Material.ROCK, true, 20, true, "ore_gneiss_uranium").addRadiation(ItemHazard.ore * ItemHazard.u).toBlock().setCreativeTab(MainRegistry.resourceTab).setHardness(1.5F).setResistance(10.0F);
+ public static final Block ore_gneiss_uranium_scorched = new BlockOutgas(Material.ROCK, true, 20, true, "ore_gneiss_uranium_scorched").addRadiation(1.0F).toBlock().setCreativeTab(MainRegistry.resourceTab).setHardness(1.5F).setResistance(10.0F);
public static final Block ore_gneiss_copper = new BlockOre(Material.ROCK, "ore_gneiss_copper", 1).setCreativeTab(MainRegistry.resourceTab).setHardness(1.5F).setResistance(10.0F);
public static final Block ore_gneiss_asbestos = new BlockOre(Material.ROCK, "ore_gneiss_asbestos", 2).addAsbestos(5).toBlock().setCreativeTab(MainRegistry.resourceTab).setHardness(1.5F).setResistance(10.0F);
public static final Block ore_gneiss_lithium = new BlockOre(Material.ROCK, "ore_gneiss_lithium", 0).addHydroReactivity().toBlock().setCreativeTab(MainRegistry.resourceTab).setHardness(1.5F).setResistance(10.0F);
@@ -448,8 +451,8 @@ public SoundEvent getBreakSound() {
public static final Block ore_nether_tungsten = new BlockOre(Material.ROCK, "ore_nether_tungsten", 2).setCreativeTab(MainRegistry.resourceTab).setHardness(0.4F).setResistance(10.0F);
public static final Block ore_nether_sulfur = new BlockOre(Material.ROCK, "ore_nether_sulfur", 1).setCreativeTab(MainRegistry.resourceTab).setHardness(0.4F).setResistance(10.0F);
public static final Block ore_nether_fire = new BlockOre(Material.ROCK, "ore_nether_fire", 1).addFire(5).toBlock().setCreativeTab(MainRegistry.resourceTab).setHardness(0.4F).setResistance(10.0F);
- public static final Block ore_nether_uranium = new BlockOre(Material.ROCK, "ore_nether_uranium", 2).addRadiation(ItemHazard.ore * ItemHazard.u).toBlock().setHardness(0.4F).setResistance(10.0F).setCreativeTab(MainRegistry.resourceTab);
- public static final Block ore_nether_uranium_scorched = new BlockOre(Material.ROCK, "ore_nether_uranium_scorched", 2).addRadiation(2.0F).toBlock().setCreativeTab(MainRegistry.resourceTab).setHardness(0.4F).setResistance(10.0F);
+ public static final Block ore_nether_uranium = new BlockOutgas(Material.ROCK, true, 20, true, "ore_nether_uranium").addRadiation(ItemHazard.ore * ItemHazard.u).toBlock().setHardness(0.4F).setResistance(10.0F).setCreativeTab(MainRegistry.resourceTab);
+ public static final Block ore_nether_uranium_scorched = new BlockOutgas(Material.ROCK, true, 20, true, "ore_nether_uranium_scorched").addRadiation(2.0F).toBlock().setCreativeTab(MainRegistry.resourceTab).setHardness(0.4F).setResistance(10.0F);
public static final Block ore_nether_plutonium = new BlockOre(Material.ROCK, "ore_nether_plutonium", 3).addRadiation(ItemHazard.pu).toBlock().setCreativeTab(MainRegistry.resourceTab).setHardness(0.4F).setResistance(10.0F);
public static final Block ore_nether_schrabidium = new BlockOre(Material.ROCK, "ore_nether_schrabidium", 3).addRadiation(ItemHazard.ore * ItemHazard.sa326).addBlinding().toBlock().setHardness(15.0F).setResistance(600.0F).setCreativeTab(MainRegistry.resourceTab);
public static final Block stone_depth_nether = new BlockDepth("stone_depth_nether").setCreativeTab(MainRegistry.resourceTab);
@@ -461,16 +464,16 @@ public SoundEvent getBreakSound() {
public static final Block block_meteor_broken = new BlockOre(Material.ROCK, "block_meteor_broken", 1).setCreativeTab(MainRegistry.resourceTab).setHardness(15.0F).setResistance(900.0F);
public static final Block block_meteor_molten = new BlockHazard(Material.ROCK, "block_meteor_molten").addFire(3).toBlock().setTickRandomly(true).setLightLevel(0.75F).setCreativeTab(MainRegistry.resourceTab).setHardness(15.0F).setResistance(900.0F);
public static final Block block_meteor_treasure = new BlockOre(Material.ROCK, "block_meteor_treasure", 3).setCreativeTab(MainRegistry.resourceTab).setHardness(15.0F).setResistance(900.0F);
- public static final Block ore_meteor_uranium = new BlockOre(Material.ROCK, "ore_meteor_uranium", 2).addRadiation(0.25F).toBlock().setCreativeTab(MainRegistry.resourceTab).setHardness(5.0F).setResistance(10.0F);
- public static final Block ore_meteor_thorium = new BlockOre(Material.ROCK, "ore_meteor_thorium", 2).addRadiation(ItemHazard.th232).toBlock().setCreativeTab(MainRegistry.resourceTab).setHardness(5.0F).setResistance(10.0F);
- public static final Block ore_meteor_titanium = new BlockOre(Material.ROCK, "ore_meteor_titanium", 1).setCreativeTab(MainRegistry.resourceTab).setHardness(5.0F).setResistance(10.0F);
- public static final Block ore_meteor_sulfur = new BlockOre(Material.ROCK, "ore_meteor_sulfur", 1).setCreativeTab(MainRegistry.resourceTab).setHardness(5.0F).setResistance(10.0F);
- public static final Block ore_meteor_copper = new BlockOre(Material.ROCK, "ore_meteor_copper", 1).setCreativeTab(MainRegistry.resourceTab).setHardness(5.0F).setResistance(10.0F);
- public static final Block ore_meteor_tungsten = new BlockOre(Material.ROCK, "ore_meteor_tungsten", 2).setCreativeTab(MainRegistry.resourceTab).setHardness(5.0F).setResistance(10.0F);
- public static final Block ore_meteor_aluminium = new BlockOre(Material.ROCK, "ore_meteor_aluminium", 1).setCreativeTab(MainRegistry.resourceTab).setHardness(5.0F).setResistance(10.0F);
- public static final Block ore_meteor_lead = new BlockOre(Material.ROCK, "ore_meteor_lead", 2).setCreativeTab(MainRegistry.resourceTab).setHardness(5.0F).setResistance(10.0F);
- public static final Block ore_meteor_lithium = new BlockOre(Material.ROCK, "ore_meteor_lithium", 0).addHydroReactivity().toBlock().setCreativeTab(MainRegistry.resourceTab).setHardness(5.0F).setResistance(10.0F);
- public static final Block ore_meteor_starmetal = new BlockOre(Material.ROCK, "ore_meteor_starmetal", 3).setCreativeTab(MainRegistry.resourceTab).setHardness(10.0F).setResistance(100.0F);
+ public static final Block ore_meteor_uranium = new BlockOre(Material.ROCK, "ore_meteor_uranium", 2, 30).addRadiation(0.25F).toBlock().setCreativeTab(MainRegistry.resourceTab).setHardness(5.0F).setResistance(10.0F);
+ public static final Block ore_meteor_thorium = new BlockOre(Material.ROCK, "ore_meteor_thorium", 2, 30).addRadiation(ItemHazard.th232).toBlock().setCreativeTab(MainRegistry.resourceTab).setHardness(5.0F).setResistance(10.0F);
+ public static final Block ore_meteor_titanium = new BlockOre(Material.ROCK, "ore_meteor_titanium", 1, 30).setCreativeTab(MainRegistry.resourceTab).setHardness(5.0F).setResistance(10.0F);
+ public static final Block ore_meteor_sulfur = new BlockOre(Material.ROCK, "ore_meteor_sulfur", 1, 30).setCreativeTab(MainRegistry.resourceTab).setHardness(5.0F).setResistance(10.0F);
+ public static final Block ore_meteor_copper = new BlockOre(Material.ROCK, "ore_meteor_copper", 1, 30).setCreativeTab(MainRegistry.resourceTab).setHardness(5.0F).setResistance(10.0F);
+ public static final Block ore_meteor_tungsten = new BlockOre(Material.ROCK, "ore_meteor_tungsten", 2, 30).setCreativeTab(MainRegistry.resourceTab).setHardness(5.0F).setResistance(10.0F);
+ public static final Block ore_meteor_aluminium = new BlockOre(Material.ROCK, "ore_meteor_aluminium", 1, 30).setCreativeTab(MainRegistry.resourceTab).setHardness(5.0F).setResistance(10.0F);
+ public static final Block ore_meteor_lead = new BlockOre(Material.ROCK, "ore_meteor_lead", 2, 30).setCreativeTab(MainRegistry.resourceTab).setHardness(5.0F).setResistance(10.0F);
+ public static final Block ore_meteor_lithium = new BlockOre(Material.ROCK, "ore_meteor_lithium", 0, 30).addHydroReactivity().toBlock().setCreativeTab(MainRegistry.resourceTab).setHardness(5.0F).setResistance(10.0F);
+ public static final Block ore_meteor_starmetal = new BlockOre(Material.ROCK, "ore_meteor_starmetal", 3, 60).setCreativeTab(MainRegistry.resourceTab).setHardness(10.0F).setResistance(100.0F);
public static final Block meteor_polished = new BlockBase(Material.ROCK, "meteor_polished").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(900.0F);
public static final Block meteor_brick = new BlockBase(Material.ROCK, "meteor_brick").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(900.0F);
@@ -539,8 +542,8 @@ public SoundEvent getBreakSound() {
public static final Block block_au198 = new BlockHazard(Material.IRON, SoundType.METAL, "block_au198").addRadiation(ItemHazard.au198 * ItemHazard.block).addFire(5).toBlock().setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(600.0F);
public static final Block block_euphemium = new BlockBase(Material.IRON, "block_euphemium").setSoundType(SoundType.METAL).setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(60000.0F);
public static final Block block_dineutronium = new BlockBase(Material.IRON, "block_dineutronium").setSoundType(SoundType.METAL).setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(60000.0F);
- public static final Block block_schrabidium_cluster = new BlockRotatablePillar(Material.ROCK, "block_schrabidium_cluster").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(60000.0F);
- public static final Block block_euphemium_cluster = new BlockRotatablePillar(Material.ROCK, "block_euphemium_cluster").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(60000.0F);
+ public static final Block block_schrabidium_cluster = new BlockRotatablePillarHazard(Material.ROCK, "block_schrabidium_cluster").addRadiation(70F).toBlock().setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(60000.0F);
+ public static final Block block_euphemium_cluster = new BlockRotatablePillarHazard(Material.ROCK, "block_euphemium_cluster").addRadiation(50F).toBlock().setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(60000.0F);
public static final Block block_combine_steel = new BlockBase(Material.IRON, "block_combine_steel").setSoundType(SoundType.METAL).setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(600.0F);
public static final Block block_magnetized_tungsten = new BlockHazard(Material.IRON, SoundType.METAL, "block_magnetized_tungsten").addRadiation(ItemHazard.magt * ItemHazard.block).toBlock().setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(35.0F);
public static final Block block_desh = new BlockBase(Material.IRON, "block_desh").setSoundType(SoundType.METAL).setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(600.0F);
@@ -620,8 +623,8 @@ public SoundEvent getBreakSound() {
public static final Block waste_trinitite = new WasteSand(Material.SAND, SoundType.SAND, "waste_trinitite").addRadiation(ItemHazard.trx).toBlock().setHardness(0.5F).setResistance(2.5F).setCreativeTab(MainRegistry.resourceTab);
public static final Block waste_sand_red = new WasteSand(Material.SAND, SoundType.SAND, "waste_sand_red").addRadiation(ItemHazard.trx*ItemHazard.nugget).toBlock().setHardness(0.5F).setResistance(1.0F).setCreativeTab(MainRegistry.resourceTab);
public static final Block waste_trinitite_red = new WasteSand(Material.SAND, SoundType.SAND, "waste_trinitite_red").addRadiation(ItemHazard.trx).toBlock().setHardness(0.5F).setResistance(2.5F).setCreativeTab(MainRegistry.resourceTab);
- public static final Block waste_log = new WasteLog(Material.WOOD, SoundType.WOOD, "waste_log").addRadiation(1F).toBlock().setHardness(5.0F).setResistance(2.5F).setCreativeTab(MainRegistry.resourceTab);
- public static final Block waste_planks = new BlockOre(Material.WOOD, SoundType.WOOD, "waste_planks", 0).addRadiation(0.5F).toBlock().setHardness(0.5F).setResistance(2.5F).setCreativeTab(MainRegistry.resourceTab);
+ public static final Block waste_log = new WasteLog(Material.WOOD, SoundType.WOOD, "waste_log").addCoal(2).toBlock().setHardness(5.0F).setResistance(2.5F).setCreativeTab(MainRegistry.resourceTab);
+ public static final Block waste_planks = new BlockOre(Material.WOOD, SoundType.WOOD, "waste_planks", 0).addCoal(1).toBlock().setHardness(0.5F).setResistance(2.5F).setCreativeTab(MainRegistry.resourceTab);
public static final Block waste_leaves = new WasteLeaves("waste_leaves").addRadiation(0.15F).toBlock().setHardness(0.3F).setResistance(0.3F).setCreativeTab(MainRegistry.resourceTab);
public static final Block waste_grass_tall = new WasteGrassTall(Material.PLANTS, "waste_grass_tall").setCreativeTab(MainRegistry.resourceTab);
@@ -647,11 +650,12 @@ public SoundEvent getBreakSound() {
public static final Block fallout = new BlockFallout(Material.SNOW, SoundType.GROUND, "fallout").addRadiation(ItemHazard.fo * 2).toBlock().setCreativeTab(MainRegistry.resourceTab).setHardness(0.1F).setLightOpacity(0);
public static final Block block_fallout = new BlockHazardFalling(SoundType.GROUND, "block_fallout").addRadiation(ItemHazard.fo * ItemHazard.block).toBlock().setCreativeTab(MainRegistry.resourceTab).setHardness(0.2F);
- public static final Block block_boron = new BlockBeaconable(Material.IRON, "block_boron").setSoundType(SoundType.METAL).setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F);
+ public static final Block block_boron = new BlockRadResistant(Material.IRON, "block_boron").setSoundType(SoundType.METAL).setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F);
public static final Block block_lanthanium = new BlockBeaconable(Material.IRON, "block_lanthanium").setSoundType(SoundType.METAL).setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F);
public static final Block block_ra226 = new BlockHazard(Material.IRON, "block_ra226").makeBeaconable().addRadiation(ItemHazard.ra226 * ItemHazard.block).addHydroReactivity().toBlock().setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F);
+ public static final Block block_radspice = new BlockHazard(Material.IRON, "block_radspice").makeBeaconable().addRadiation(ItemHazard.radspice * ItemHazard.block).addFire(15).addBlinding().addHydroReactivity().toBlock().setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F);
public static final Block block_actinium = new BlockBeaconable(Material.IRON, "block_actinium").setSoundType(SoundType.METAL).setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F);
- public static final Block block_tritium = new BlockRotatablePillar(Material.GLASS, "block_tritium").setSoundType(SoundType.GLASS).setCreativeTab(MainRegistry.blockTab).setHardness(3.0F).setResistance(2.0F);
+ public static final Block block_tritium = new BlockRotatablePillarHazard(Material.GLASS, SoundType.GLASS, "block_tritium").addRadiation(4.5F).toBlock().setCreativeTab(MainRegistry.blockTab).setHardness(3.0F).setResistance(2.0F);
public static final Block block_smore = new BlockBase(Material.ROCK, "block_smore").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(900.0F);
public static final Block sellafield_slaked = new BlockHazard(Material.ROCK, SoundType.STONE, "sellafield_slaked").addRadiation(2.5F).toBlock().setHardness(5.0F).setResistance(6F).setCreativeTab(MainRegistry.resourceTab);
@@ -689,7 +693,13 @@ public SoundEvent getBreakSound() {
public static final Block block_white_phosphorus = new BlockHazard(Material.ROCK, "block_white_phosphorus").addFire(10).toBlock().setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F);
public static final Block block_red_phosphorus = new BlockFallingBase(Material.SAND, "block_red_phosphorus", SoundType.SAND).setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F);
public static final Block block_foam = new BlockBase(Material.CRAFTED_SNOW, "block_foam").setSoundType(SoundType.SNOW).setCreativeTab(MainRegistry.blockTab).setHardness(0.5F).setResistance(0.0F);
- public static final Block block_graphite = new BlockGraphite(Material.IRON, 30, 5, "block_graphite").setSoundType(SoundType.METAL).setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F);
+ public static final Block block_lignite = new BlockHazardFuel(Material.ROCK, "block_lignite", 10, 10, 12000).addCoal(4).toBlock().setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F);
+ public static final Block block_coke = new BlockHazardFuel(Material.ROCK, "block_coke", 10, 10, 32000).addCoal(10).toBlock().setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F);
+ public static final Block block_coal_infernal = new BlockHazardFuel(Material.ROCK, "block_coal_infernal", 1, 1, 84000).addFire(4).addCoal(20).toBlock().setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F);
+ public static final Block block_solid_fuel = new BlockHazardFuel(Material.ROCK, "block_solid_fuel", 10, 10, 32000).setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F);
+ public static final Block block_solid_fuel_presto = new BlockHazardFuel(Material.ROCK, "block_solid_fuel_presto", 6, 6, 64000).setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F);
+ public static final Block block_solid_fuel_presto_triplet = new BlockHazardFuel(Material.ROCK, "block_solid_fuel_presto_triplet", 2, 2, 192000).setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F);
+ public static final Block block_graphite = new BlockGraphite(Material.IRON, "block_graphite", 30, 5, 16000).setSoundType(SoundType.METAL).setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F);
public static final Block block_graphite_drilled = new BlockGraphiteDrilled("block_graphite_drilled");
public static final Block block_graphite_fuel = new BlockGraphiteFuel("block_graphite_fuel");
public static final Block block_graphite_plutonium = new BlockGraphiteSource("block_graphite_plutonium");
@@ -911,10 +921,11 @@ public SoundEvent getBreakSound() {
public static final Block sliding_blast_door_2 = new BlockSlidingBlastDoor(Material.IRON, "sliding_blast_door_2").setHardness(150.0F).setResistance(7500.0F).setCreativeTab(MainRegistry.machineTab);
public static final Block sliding_blast_door_keypad = new BlockSlidingBlastDoor(Material.IRON, "sliding_blast_door_keypad").setHardness(150.0F).setResistance(7500.0F).setCreativeTab(null);
- public static final Block small_hatch = new BlockDoorGeneric(Material.IRON, DoorDecl.HATCH, false, "small_hatch").setHardness(100.0F).setResistance(1000.0F).setCreativeTab(MainRegistry.machineTab);
- public static final Block sliding_seal_door = new BlockDoorGeneric(Material.IRON, DoorDecl.SLIDING_SEAL_DOOR, false, "sliding_seal_door").setHardness(10.0F).setResistance(10000.0F).setCreativeTab(MainRegistry.machineTab);
+ public static final Block small_hatch = new BlockDoorGeneric(Material.IRON, DoorDecl.HATCH, true, "small_hatch").setHardness(100.0F).setResistance(1000.0F).setCreativeTab(MainRegistry.machineTab);
+ public static final Block sliding_seal_door = new BlockDoorGeneric(Material.IRON, DoorDecl.SLIDING_SEAL_DOOR, false, "sliding_seal_door").setHardness(10.0F).setResistance(1000.0F).setCreativeTab(MainRegistry.machineTab);
+ public static final Block sliding_gate_door = new BlockDoorGeneric(Material.IRON, DoorDecl.SLIDING_GATE_DOOR, true, "sliding_gate_door").setHardness(100.0F).setResistance(10000.0F).setCreativeTab(MainRegistry.machineTab);
public static final Block qe_containment = new BlockDoorGeneric(Material.IRON, DoorDecl.QE_CONTAINMENT, true, "qe_containment").setHardness(100.0F).setResistance(10000.0F).setCreativeTab(MainRegistry.machineTab);
- public static final Block qe_sliding_door = new BlockDoorGeneric(Material.IRON, DoorDecl.QE_SLIDING, false, "qe_sliding").setHardness(100.0F).setResistance(10000.0F).setCreativeTab(MainRegistry.machineTab);
+ public static final Block qe_sliding_door = new BlockDoorGeneric(Material.IRON, DoorDecl.QE_SLIDING, false, "qe_sliding").setHardness(100.0F).setResistance(1000.0F).setCreativeTab(MainRegistry.machineTab);
public static final Block fire_door = new BlockDoorGeneric(Material.IRON, DoorDecl.FIRE_DOOR, true, "fire_door").setHardness(100.0F).setResistance(10000.0F).setCreativeTab(MainRegistry.machineTab);
public static final Block water_door = new BlockDoorGeneric(Material.IRON, DoorDecl.WATER_DOOR, false, "water_door").setHardness(50.0F).setResistance(500.0F).setCreativeTab(MainRegistry.machineTab);
public static final Block large_vehicle_door = new BlockDoorGeneric(Material.IRON, DoorDecl.LARGE_VEHICLE_DOOR, true, "large_vehicle_door").setHardness(100.0F).setResistance(10000.0F).setCreativeTab(MainRegistry.machineTab);
@@ -1000,16 +1011,13 @@ public SoundEvent getBreakSound() {
public static final Block machine_fensu = new MachineFENSU(Material.IRON, "machine_fensu").setHardness(5.0F).setResistance(10000000.0F).setCreativeTab(MainRegistry.machineTab);
public static final int guiID_machine_battery = 21;
- @Spaghetti("What is the point of you")
- public static final Block machine_transformer = new MachineTransformer(Material.IRON, 10000L, 1, "machine_transformer").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab);
- public static final Block machine_transformer_20 = new MachineTransformer(Material.IRON, 10000L, 20, "machine_transformer_20").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab);
- public static final Block machine_transformer_dnt = new MachineTransformer(Material.IRON, 1000000000000000L, 1, "machine_transformer_dnt").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab);
- public static final Block machine_transformer_dnt_20 = new MachineTransformer(Material.IRON, 1000000000000000L, 20, "machine_transformer_dnt_20").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab);
+ public static final Block machine_transformer = new MachineCharger(Material.IRON, "machine_transformer", 1000000L, true).setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab);
+ public static final Block machine_transformer_20 = new MachineCharger(Material.IRON, "machine_transformer_20", 1000000L, false).setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab);
+ public static final Block machine_transformer_dnt = new MachineCharger(Material.IRON, "machine_transformer_dnt", Long.MAX_VALUE, true).setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab);
+ public static final Block machine_transformer_dnt_20 = new MachineCharger(Material.IRON, "machine_transformer_dnt_20", Long.MAX_VALUE, false).setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab);
public static final Block machine_converter_he_rf = new BlockConverterHeRf(Material.IRON, "machine_converter_he_rf").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab);
- public static final int guiID_converter_he_rf = 28;
public static final Block machine_converter_rf_he = new BlockConverterRfHe(Material.IRON, "machine_converter_rf_he").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab);
- public static final int guiID_converter_rf_he = 29;
public static final Block machine_press = new MachinePress(Material.IRON, "machine_press").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab);
public static final int guiID_machine_press = 53;
@@ -1086,8 +1094,8 @@ public SoundEvent getBreakSound() {
public static final Block pribris_radiating = new RBMKDebrisRadiating("pribris_radiating").addRadiation(5000F).addFire(30).toBlock().setCreativeTab(MainRegistry.machineTab).setHardness(50.0F).setResistance(2000.0F);
public static final Block pribris_digamma = new RBMKDebrisDigamma("pribris_digamma").addDigamma(0.05F).addFire(300).toBlock().setCreativeTab(MainRegistry.machineTab).setHardness(50.0F).setResistance(6000.0F);
- public static final Block block_corium = new BlockHazard(Material.IRON, "block_corium").makeBeaconable().addRad3d(1500000).addRadiation(100000F).toBlock().setCreativeTab(MainRegistry.resourceTab).setHardness(100.0F).setResistance(9000.0F);
- public static final Block block_corium_cobble = new BlockOutgas(Material.IRON, true, 1, true, true, "block_corium_cobble").addRadiation(10000F).toBlock().setCreativeTab(MainRegistry.resourceTab).setHardness(100.0F).setResistance(6000.0F);
+ public static final Block block_corium = new BlockHazard(Material.IRON, "block_corium").makeBeaconable().addRad3d(150000).addRadiation(10000F).toBlock().setCreativeTab(MainRegistry.resourceTab).setHardness(100.0F).setResistance(9000.0F);
+ public static final Block block_corium_cobble = new BlockOutgas(Material.IRON, true, 1, true, true, "block_corium_cobble").addRadiation(1000F).toBlock().setCreativeTab(MainRegistry.resourceTab).setHardness(100.0F).setResistance(6000.0F);
public static final Block machine_assembler = new MachineAssembler(Material.IRON, "machine_assembler").setCreativeTab(MainRegistry.machineTab).setHardness(5.0F).setResistance(100.0F);
public static final int guiID_machine_assembler = 48;
@@ -1275,11 +1283,11 @@ public SoundEvent getBreakSound() {
public static final int guiID_factory_titanium = 24;
public static final Block factory_titanium_hull = new BlockBase(Material.IRON, "factory_titanium_hull").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab);
public static final Block factory_titanium_furnace = new FactoryHatch(Material.IRON, "factory_titanium_furnace").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab);
- public static final Block factory_titanium_conductor = new BlockReactor(Material.IRON, "factory_titanium_conductor").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab);
+ public static final Block factory_titanium_conductor = new BlockCableConnect(Material.IRON, "factory_titanium_conductor").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab);
public static final Block factory_titanium_core = new FactoryCoreTitanium(Material.IRON, "factory_titanium_core").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab);
public static final Block factory_advanced_hull = new BlockBase(Material.IRON, "factory_advanced_hull").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab);
public static final Block factory_advanced_furnace = new FactoryHatch(Material.IRON, "factory_advanced_furnace").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab);
- public static final Block factory_advanced_conductor = new BlockReactor(Material.IRON, "factory_advanced_conductor").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab);
+ public static final Block factory_advanced_conductor = new BlockCableConnect(Material.IRON, "factory_advanced_conductor").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab);
public static final Block factory_advanced_core = new FactoryCoreAdvanced(Material.IRON, "factory_advanced_core").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab);
public static final int guiID_factory_advanced = 25;
diff --git a/src/main/java/com/hbm/blocks/bomb/NukeCustom.java b/src/main/java/com/hbm/blocks/bomb/NukeCustom.java
index a7ac306d4b..bd0c1e77d3 100644
--- a/src/main/java/com/hbm/blocks/bomb/NukeCustom.java
+++ b/src/main/java/com/hbm/blocks/bomb/NukeCustom.java
@@ -4,6 +4,7 @@
import com.hbm.blocks.ModBlocks;
import com.hbm.config.BombConfig;
+import com.hbm.entity.effect.EntityCloudSolinium;
import com.hbm.entity.effect.EntityCloudFleija;
import com.hbm.entity.effect.EntityNukeCloudSmall;
import com.hbm.entity.grenade.EntityGrenadeZOMG;
@@ -93,82 +94,96 @@ public void neighborChanged(IBlockState state, World world, BlockPos pos, Block
this.explode(world, pos);
}
}
-
- public static final int maxTnt = 150;
- public static final int maxNuke = 200;
- public static final int maxHydro = 350;
- public static final int maxAmat = 350;
- public static final int maxSchrab = 250;
- public static void explodeCustom(World worldObj, double xCoord, double yCoord, double zCoord, float tnt, float nuke, float hydro, float amat, float dirty, float schrab, float euph) {
+ public static void explodeCustom(World world, double xCoord, double yCoord, double zCoord, float tnt, float nuke, float hydro, float bale, float dirty, float schrab, float sol, float euph) {
- dirty = Math.min(dirty, 100);
+ dirty = Math.min(dirty, BombConfig.maxCustomDirtyRadius);
/// EUPHEMIUM ///
if(euph > 0) {
- EntityGrenadeZOMG zomg = new EntityGrenadeZOMG(worldObj, xCoord, yCoord, zCoord);
- ExplosionChaos.zomg(worldObj, xCoord, yCoord, zCoord, 1000, null, zomg);
+ euph = Math.min(euph, BombConfig.maxCustomEuphLvl);
+ EntityGrenadeZOMG zomg = new EntityGrenadeZOMG(world, xCoord, yCoord, zCoord);
+ ExplosionChaos.zomg(world, xCoord, yCoord, zCoord, (int)(100 * euph), null, zomg);
+
+ // SOLINIUM ///
+ } else if(sol > 0) {
+
+ sol += schrab / 2 + bale / 4 + hydro / 8 + nuke / 16 + tnt / 32;
+ sol = Math.min(sol, BombConfig.maxCustomSolRadius);
+
+ EntityNukeExplosionMK3 entity = new EntityNukeExplosionMK3(world);
+ entity.setPosition(xCoord + 0.5, yCoord + 0.5, zCoord + 0.5);
+ entity.destructionRange = (int) sol;
+ entity.speed = BombConfig.blastSpeed;
+ entity.coefficient = 1.0F;
+ entity.waste = false;
+ entity.extType = 1;
+ world.spawnEntity(entity);
+
+ EntityCloudSolinium cloud = new EntityCloudSolinium(world, (int)sol);
+ cloud.setPosition(xCoord + 0.5, yCoord + 0.5, zCoord + 0.5);
+ world.spawnEntity(cloud);
// SCHRABIDIUM ///
} else if(schrab > 0) {
- schrab += amat / 2 + hydro / 4 + nuke / 8 + tnt / 16;
- schrab = Math.min(schrab, maxSchrab);
+ schrab += bale / 2 + hydro / 4 + nuke / 8 + tnt / 16;
+ schrab = Math.min(schrab, BombConfig.maxCustomSchrabRadius);
- EntityNukeExplosionMK3 entity = new EntityNukeExplosionMK3(worldObj);
+ EntityNukeExplosionMK3 entity = new EntityNukeExplosionMK3(world);
entity.setPosition(xCoord + 0.5, yCoord + 0.5, zCoord + 0.5);
entity.destructionRange = (int) schrab;
entity.speed = BombConfig.blastSpeed;
entity.coefficient = 1.0F;
entity.waste = false;
- worldObj.spawnEntity(entity);
+ world.spawnEntity(entity);
- EntityCloudFleija cloud = new EntityCloudFleija(worldObj, (int)schrab);
+ EntityCloudFleija cloud = new EntityCloudFleija(world, (int)schrab);
cloud.setPosition(xCoord + 0.5, yCoord + 0.5, zCoord + 0.5);
- worldObj.spawnEntity(cloud);
+ world.spawnEntity(cloud);
/// ANTIMATTER ///
- } else if(amat > 0) {
+ } else if(bale > 0) {
- amat += hydro / 2 + nuke / 4 + tnt / 8;
- amat = Math.min(amat, maxAmat);
+ bale += hydro / 2 + nuke / 4 + tnt / 8;
+ bale = Math.min(bale, BombConfig.maxCustomBaleRadius);
- EntityBalefire bf = new EntityBalefire(worldObj);
+ EntityBalefire bf = new EntityBalefire(world);
bf.setPosition(xCoord + 0.5, yCoord + 0.5, zCoord + 0.5);
- bf.destructionRange = (int) amat;
- worldObj.spawnEntity(bf);
- worldObj.spawnEntity(EntityNukeCloudSmall.statFacBale(worldObj, xCoord + 0.5, yCoord + 5, zCoord + 0.5, amat));
+ bf.destructionRange = (int) bale;
+ world.spawnEntity(bf);
+ world.spawnEntity(EntityNukeCloudSmall.statFacBale(world, xCoord + 0.5, yCoord + 5, zCoord + 0.5, bale));
/// HYDROGEN ///
} else if(hydro > 0) {
hydro += nuke / 2 + tnt / 4;
- hydro = Math.min(hydro, maxHydro);
+ hydro = Math.min(hydro, BombConfig.maxCustomHydroRadius);
dirty *= 0.25F;
- worldObj.spawnEntity(EntityNukeExplosionMK4.statFac(worldObj, (int)hydro, xCoord + 0.5, yCoord + 0.5, zCoord + 0.5).moreFallout((int)dirty));
- worldObj.spawnEntity(EntityNukeCloudSmall.statFac(worldObj, xCoord + 0.5, yCoord + 5, zCoord + 0.5, hydro));
+ world.spawnEntity(EntityNukeExplosionMK4.statFac(world, (int)hydro, xCoord + 0.5, yCoord + 0.5, zCoord + 0.5).moreFallout((int)dirty));
+ world.spawnEntity(EntityNukeCloudSmall.statFac(world, xCoord + 0.5, yCoord + 5, zCoord + 0.5, hydro));
/// NUCLEAR ///
} else if(nuke > 0) {
nuke += tnt / 2;
- nuke = Math.min(nuke, maxNuke);
+ nuke = Math.min(nuke, BombConfig.maxCustomNukeRadius);
- worldObj.spawnEntity(EntityNukeExplosionMK4.statFac(worldObj, (int)nuke, xCoord + 0.5, yCoord + 5, zCoord + 0.5).moreFallout((int)dirty));
- worldObj.spawnEntity(EntityNukeCloudSmall.statFac(worldObj, xCoord + 0.5, yCoord + 5, zCoord + 0.5, nuke));
+ world.spawnEntity(EntityNukeExplosionMK4.statFac(world, (int)nuke, xCoord + 0.5, yCoord + 5, zCoord + 0.5).moreFallout((int)dirty));
+ world.spawnEntity(EntityNukeCloudSmall.statFac(world, xCoord + 0.5, yCoord + 5, zCoord + 0.5, nuke));
/// NON-NUCLEAR ///
} else if(tnt >= 75) {
- tnt = Math.min(tnt, maxTnt);
+ tnt = Math.min(tnt, BombConfig.maxCustomTNTRadius);
- worldObj.spawnEntity(EntityNukeExplosionMK4.statFacNoRad(worldObj, (int)tnt, xCoord + 0.5, yCoord + 0.5, zCoord + 0.5));
- worldObj.spawnEntity(EntityNukeCloudSmall.statFac(worldObj, xCoord + 0.5, yCoord + 5, zCoord + 0.5, tnt));
+ world.spawnEntity(EntityNukeExplosionMK4.statFacNoRad(world, (int)tnt, xCoord + 0.5, yCoord + 0.5, zCoord + 0.5));
+ world.spawnEntity(EntityNukeCloudSmall.statFac(world, xCoord + 0.5, yCoord + 5, zCoord + 0.5, tnt));
} else if(tnt > 0) {
- ExplosionLarge.explode(worldObj, xCoord + 0.5, yCoord + 0.5, zCoord + 0.5, tnt, true, true, true);
+ ExplosionLarge.explode(world, xCoord + 0.5, yCoord + 0.5, zCoord + 0.5, tnt, true, true, true);
}
}
@@ -180,11 +195,11 @@ public void explode(World world, BlockPos pos) {
entity.clearSlots();
world.destroyBlock(pos, false);
- NukeCustom.explodeCustom(world, pos.getX() + 0.5, pos.getY() + 0.5, pos.getZ() + 0.5, entity.tnt, entity.nuke, entity.hydro, entity.amat, entity.dirty, entity.schrab, entity.euph);
+ NukeCustom.explodeCustom(world, pos.getX() + 0.5, pos.getY() + 0.5, pos.getZ() + 0.5, entity.tnt, entity.nuke, entity.hydro, entity.bale, entity.dirty, entity.schrab, entity.sol, entity.euph);
} else {
- EntityFallingNuke bomb = new EntityFallingNuke(world, entity.tnt, entity.nuke, entity.hydro, entity.amat, entity.dirty, entity.schrab, entity.euph);
+ EntityFallingNuke bomb = new EntityFallingNuke(world, entity.tnt, entity.nuke, entity.hydro, entity.bale, entity.dirty, entity.schrab, entity.sol, entity.euph);
bomb.getDataManager().set(EntityFallingNuke.FACING, world.getBlockState(pos).getValue(FACING));
bomb.setPositionAndRotation(pos.getX() + 0.5, pos.getY(), pos.getZ() + 0.5, 0, 0);
entity.clearSlots();
diff --git a/src/main/java/com/hbm/blocks/gas/BlockGasAsbestos.java b/src/main/java/com/hbm/blocks/gas/BlockGasAsbestos.java
index f9e84d814e..f3bf736fbd 100644
--- a/src/main/java/com/hbm/blocks/gas/BlockGasAsbestos.java
+++ b/src/main/java/com/hbm/blocks/gas/BlockGasAsbestos.java
@@ -52,7 +52,7 @@ public ForgeDirection getSecondDirection(World world, int x, int y, int z) {
@Override
public void updateTick(World world, BlockPos pos, IBlockState state, Random rand) {
- if(!world.isRemote && (!GeneralConfig.enableAsbestos || rand.nextInt(50) == 0)) {
+ if(!world.isRemote && (!GeneralConfig.enableAsbestos || rand.nextInt(10) == 0)) {
world.setBlockToAir(pos);
return;
}
diff --git a/src/main/java/com/hbm/blocks/gas/BlockGasBase.java b/src/main/java/com/hbm/blocks/gas/BlockGasBase.java
index eb915ed2db..983346743c 100644
--- a/src/main/java/com/hbm/blocks/gas/BlockGasBase.java
+++ b/src/main/java/com/hbm/blocks/gas/BlockGasBase.java
@@ -94,7 +94,7 @@ public boolean isReplaceable(IBlockAccess worldIn, BlockPos pos){
@Override
public void updateTick(World world, BlockPos pos, IBlockState state, Random rand){
if(!world.isRemote) {
- if(world.rand.nextInt(4)==0){
+ if(world.rand.nextInt(2)==0){
if(!tryMove(world, pos.getX(), pos.getY(), pos.getZ(), getFirstDirection(world, pos.getX(), pos.getY(), pos.getZ())))
tryMove(world, pos.getX(), pos.getY(), pos.getZ(), getSecondDirection(world, pos.getX(), pos.getY(), pos.getZ()));
}
@@ -147,5 +147,4 @@ public void randomDisplayTick(IBlockState stateIn, World worldIn, BlockPos pos,
MainRegistry.proxy.effectNT(data);
}
}
-
}
\ No newline at end of file
diff --git a/src/main/java/com/hbm/blocks/gas/BlockGasCoal.java b/src/main/java/com/hbm/blocks/gas/BlockGasCoal.java
index e6aa896422..8e7167a77a 100644
--- a/src/main/java/com/hbm/blocks/gas/BlockGasCoal.java
+++ b/src/main/java/com/hbm/blocks/gas/BlockGasCoal.java
@@ -50,7 +50,7 @@ public ForgeDirection getSecondDirection(World world, int x, int y, int z) {
@Override
public void updateTick(World world, BlockPos pos, IBlockState state, Random rand) {
- if(!world.isRemote && (!GeneralConfig.enableCoal || rand.nextInt(12) == 0)) {
+ if(!world.isRemote && (!GeneralConfig.enableCoal || rand.nextInt(4) == 0)) {
world.setBlockToAir(pos);
return;
}
diff --git a/src/main/java/com/hbm/blocks/gas/BlockGasRadon.java b/src/main/java/com/hbm/blocks/gas/BlockGasRadon.java
index a4609ea237..74f76d0e35 100644
--- a/src/main/java/com/hbm/blocks/gas/BlockGasRadon.java
+++ b/src/main/java/com/hbm/blocks/gas/BlockGasRadon.java
@@ -54,7 +54,7 @@ public ForgeDirection getSecondDirection(World world, int x, int y, int z) {
@Override
public void updateTick(World world, BlockPos pos, IBlockState state, Random rand){
- if(!world.isRemote && rand.nextInt(50) == 0) {
+ if(!world.isRemote && rand.nextInt(20) == 0) {
world.setBlockToAir(pos);
return;
}
diff --git a/src/main/java/com/hbm/blocks/gas/BlockGasRadonDense.java b/src/main/java/com/hbm/blocks/gas/BlockGasRadonDense.java
index 61eeac87f5..fff6a5b960 100644
--- a/src/main/java/com/hbm/blocks/gas/BlockGasRadonDense.java
+++ b/src/main/java/com/hbm/blocks/gas/BlockGasRadonDense.java
@@ -71,12 +71,12 @@ public ForgeDirection getSecondDirection(World world, int x, int y, int z) {
public void updateTick(World world, BlockPos pos, IBlockState state, Random rand){
if(!world.isRemote) {
- if(rand.nextInt(20) == 0) {
+ if(rand.nextInt(10) == 0) {
if(world.getBlockState(pos.down()).getBlock() == Blocks.GRASS)
world.setBlockState(pos.down(), ModBlocks.waste_earth.getDefaultState());
}
- if(rand.nextInt(30) == 0) {
+ if(rand.nextInt(20) == 0) {
world.setBlockToAir(pos);
if(ModBlocks.fallout.canPlaceBlockAt(world, pos)) {
diff --git a/src/main/java/com/hbm/blocks/generic/BarbedWire.java b/src/main/java/com/hbm/blocks/generic/BarbedWire.java
index 95ae5e9a98..b91158b281 100644
--- a/src/main/java/com/hbm/blocks/generic/BarbedWire.java
+++ b/src/main/java/com/hbm/blocks/generic/BarbedWire.java
@@ -73,7 +73,7 @@ public void onEntityCollidedWithBlock(World worldIn, BlockPos pos, IBlockState s
}
if(this == ModBlocks.barbed_wire_wither) {
- ent.attackEntityFrom(DamageSource.CACTUS, 2.0F);
+ ent.attackEntityFrom(DamageSource.CACTUS, 3.0F);
if(ent instanceof EntityLivingBase)
((EntityLivingBase)ent).addPotionEffect(new PotionEffect(MobEffects.WITHER, 5 * 20, 4));
diff --git a/src/main/java/com/hbm/blocks/generic/BlockCluster.java b/src/main/java/com/hbm/blocks/generic/BlockCluster.java
index ca7ebf50e7..07b065c2a2 100644
--- a/src/main/java/com/hbm/blocks/generic/BlockCluster.java
+++ b/src/main/java/com/hbm/blocks/generic/BlockCluster.java
@@ -26,7 +26,7 @@ public BlockCluster(Material mat, String s) {
super(mat);
this.setUnlocalizedName(s);
this.setRegistryName(s);
- this.setHarvestLevel("pickaxe", 3);
+ this.setHarvestLevel("pickaxe", 1);
ModBlocks.ALL_BLOCKS.add(this);
}
@@ -68,6 +68,8 @@ private Item getDrop() {
return ModItems.crystal_titanium;
if(this == ModBlocks.cluster_aluminium)
return ModItems.crystal_aluminium;
+ if(this == ModBlocks.cluster_copper)
+ return ModItems.crystal_copper;
if(this == ModBlocks.basalt_gem)
return ModItems.gem_volcanic;
diff --git a/src/main/java/com/hbm/blocks/generic/BlockGoldSand.java b/src/main/java/com/hbm/blocks/generic/BlockGoldSand.java
index f42230cf02..5369d582f5 100644
--- a/src/main/java/com/hbm/blocks/generic/BlockGoldSand.java
+++ b/src/main/java/com/hbm/blocks/generic/BlockGoldSand.java
@@ -9,6 +9,8 @@
import net.minecraft.block.SoundType;
import net.minecraft.block.material.Material;
+import net.minecraft.block.state.IBlockState;
+import net.minecraft.util.EnumHand;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.util.DamageSource;
@@ -25,14 +27,15 @@ public BlockGoldSand(Material m, String s, SoundType type){
}
@Override
- public void onEntityWalk(World worldIn, BlockPos pos, Entity entityIn){
- if(entityIn instanceof EntityLivingBase) {
- entityIn.attackEntityFrom(DamageSource.IN_FIRE, 2F);
-
- if(this == ModBlocks.sand_gold198) {
- HbmLivingProps.addCont((EntityLivingBase)entityIn, new ContaminationEffect(5F, 300, false));
- }
- }
+ public void onEntityWalk(World worldIn, BlockPos pos, Entity entity) {
+ if(entity instanceof EntityLivingBase)
+ this.module.applyEffects((EntityLivingBase)entity, 0.5F, 0, false, EnumHand.MAIN_HAND);
+ }
+
+ @Override
+ public void onEntityCollidedWithBlock(World worldIn, BlockPos pos, IBlockState state, Entity entity){
+ if(entity instanceof EntityLivingBase)
+ this.module.applyEffects((EntityLivingBase)entity, 0.5F, 0, false, EnumHand.MAIN_HAND);
}
@Override
diff --git a/src/main/java/com/hbm/blocks/generic/BlockHazard.java b/src/main/java/com/hbm/blocks/generic/BlockHazard.java
index 5921dfae34..5c9d573592 100644
--- a/src/main/java/com/hbm/blocks/generic/BlockHazard.java
+++ b/src/main/java/com/hbm/blocks/generic/BlockHazard.java
@@ -19,6 +19,7 @@
import net.minecraft.block.state.IBlockState;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLivingBase;
+import net.minecraft.util.EnumHand;
import net.minecraft.init.MobEffects;
import net.minecraft.item.Item;
import net.minecraft.init.Items;
@@ -74,6 +75,11 @@ public BlockHazard setDisplayEffect(ExtDisplayEffect extEffect) {
return this;
}
+ @Override
+ public Block setSoundType(SoundType sound) {
+ return super.setSoundType(sound);
+ }
+
@Override
@SideOnly(Side.CLIENT)
public void randomDisplayTick(IBlockState stateIn, World worldIn, BlockPos pos, Random rand){
@@ -221,103 +227,30 @@ public static enum ExtDisplayEffect {
LAVAPOP
}
- @Override
+ @Override
public void onEntityWalk(World worldIn, BlockPos pos, Entity entity) {
- if (entity instanceof EntityLivingBase && this == ModBlocks.frozen_dirt)
- {
- ((EntityLivingBase) entity).addPotionEffect(new PotionEffect(MobEffects.SLOWNESS, 2 * 60 * 20, 2));
- return;
- }
- if (entity instanceof EntityLivingBase && this == ModBlocks.block_trinitite)
- {
- ((EntityLivingBase) entity).addPotionEffect(new PotionEffect(HbmPotion.radiation, 30 * 20, 2));
- return;
- }
+ if(entity instanceof EntityLivingBase)
+ this.module.applyEffects((EntityLivingBase)entity, 0.5F, 0, false, EnumHand.MAIN_HAND);
- if (entity instanceof EntityLivingBase && this == ModBlocks.sellafield_0)
- {
- ((EntityLivingBase) entity).addPotionEffect(new PotionEffect(HbmPotion.radiation, 30 * 20, 0));
- return;
- }
- if (entity instanceof EntityLivingBase && this == ModBlocks.sellafield_1)
- {
- ((EntityLivingBase) entity).addPotionEffect(new PotionEffect(HbmPotion.radiation, 25 * 20, 1));
- return;
- }
- if (entity instanceof EntityLivingBase && this == ModBlocks.sellafield_2)
- {
- ((EntityLivingBase) entity).addPotionEffect(new PotionEffect(HbmPotion.radiation, 20 * 20, 3));
- return;
- }
- if (entity instanceof EntityLivingBase && this == ModBlocks.sellafield_3)
- {
- ((EntityLivingBase) entity).addPotionEffect(new PotionEffect(HbmPotion.radiation, 15 * 20, 7));
- return;
- }
- if (entity instanceof EntityLivingBase && this == ModBlocks.sellafield_4)
- {
- ((EntityLivingBase) entity).addPotionEffect(new PotionEffect(HbmPotion.radiation, 10 * 20, 15));
- return;
- }
- if (entity instanceof EntityLivingBase && this == ModBlocks.sellafield_core)
+
+ if (entity instanceof EntityLivingBase && this == ModBlocks.brick_jungle_mystic)
{
- ((EntityLivingBase) entity).addPotionEffect(new PotionEffect(HbmPotion.radiation, 5 * 20, 79));
+ ((EntityLivingBase) entity).addPotionEffect(new PotionEffect(HbmPotion.taint, 15 * 20, 2));
return;
}
+ }
- if (entity instanceof EntityLivingBase && this == ModBlocks.baleonitite_0)
- {
- ((EntityLivingBase) entity).addPotionEffect(new PotionEffect(HbmPotion.radiation, 30 * 20, 1));
- return;
- }
- if (entity instanceof EntityLivingBase && this == ModBlocks.baleonitite_1)
- {
- ((EntityLivingBase) entity).addPotionEffect(new PotionEffect(HbmPotion.radiation, 25 * 20, 2));
- return;
- }
- if (entity instanceof EntityLivingBase && this == ModBlocks.baleonitite_2)
- {
- ((EntityLivingBase) entity).addPotionEffect(new PotionEffect(HbmPotion.radiation, 20 * 20, 7));
- return;
- }
- if (entity instanceof EntityLivingBase && this == ModBlocks.baleonitite_3)
- {
- ((EntityLivingBase) entity).addPotionEffect(new PotionEffect(HbmPotion.radiation, 15 * 20, 15));
- return;
- }
- if (entity instanceof EntityLivingBase && this == ModBlocks.baleonitite_4)
- {
- ((EntityLivingBase) entity).addPotionEffect(new PotionEffect(HbmPotion.radiation, 10 * 20, 31));
- return;
- }
- if (entity instanceof EntityLivingBase && this == ModBlocks.baleonitite_core)
- {
- ((EntityLivingBase) entity).addPotionEffect(new PotionEffect(HbmPotion.radiation, 5 * 20, 159));
- return;
- }
+ @Override
+ public void onEntityCollidedWithBlock(World worldIn, BlockPos pos, IBlockState state, Entity entity){
+ if(entity instanceof EntityLivingBase)
+ this.module.applyEffects((EntityLivingBase)entity, 0.5F, 0, false, EnumHand.MAIN_HAND);
- if (entity instanceof EntityLivingBase && this == ModBlocks.block_waste)
- {
- ((EntityLivingBase) entity).addPotionEffect(new PotionEffect(HbmPotion.radiation, 30 * 20, 49));
- return;
- }
- if (entity instanceof EntityLivingBase && this == ModBlocks.brick_jungle_ooze)
- {
- ((EntityLivingBase) entity).addPotionEffect(new PotionEffect(HbmPotion.radiation, 15 * 20, 9));
- return;
- }
+
if (entity instanceof EntityLivingBase && this == ModBlocks.brick_jungle_mystic)
{
((EntityLivingBase) entity).addPotionEffect(new PotionEffect(HbmPotion.taint, 15 * 20, 2));
return;
}
- if(this == ModBlocks.block_meteor_molten || this == ModBlocks.block_au198){
- entity.setFire(5);
- return;
- }
- if(this == ModBlocks.brick_jungle_lava){
- entity.setFire(10);
- }
}
@Override
diff --git a/src/main/java/com/hbm/blocks/generic/BlockFlammable.java b/src/main/java/com/hbm/blocks/generic/BlockHazardFuel.java
similarity index 54%
rename from src/main/java/com/hbm/blocks/generic/BlockFlammable.java
rename to src/main/java/com/hbm/blocks/generic/BlockHazardFuel.java
index 48455b95ae..da04018c0a 100644
--- a/src/main/java/com/hbm/blocks/generic/BlockFlammable.java
+++ b/src/main/java/com/hbm/blocks/generic/BlockHazardFuel.java
@@ -1,21 +1,26 @@
package com.hbm.blocks.generic;
-import com.hbm.blocks.BlockBase;
-
import net.minecraft.block.material.Material;
import net.minecraft.util.EnumFacing;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.IBlockAccess;
+import net.minecraft.world.World;
-public class BlockFlammable extends BlockBase {
+public class BlockHazardFuel extends BlockHazard {
+ private int burntime;
public int encouragement;
public int flammability;
- public BlockFlammable(Material m, int en, int flam, String s){
+ public BlockHazardFuel(Material m, String s, int en, int flam, int burntime){
super(m, s);
this.encouragement = en;
this.flammability = flam;
+ this.burntime = burntime;
+ }
+
+ public int getBurnTime(){
+ return burntime;
}
@Override
@@ -28,4 +33,13 @@ public int getFireSpreadSpeed(IBlockAccess world, BlockPos pos, EnumFacing face)
return encouragement;
}
+ @Override
+ public boolean isFlammable(IBlockAccess world, BlockPos pos, EnumFacing face){
+ return true;
+ }
+
+ @Override
+ public boolean isFireSource(World world, BlockPos pos, EnumFacing side){
+ return true;
+ }
}
diff --git a/src/main/java/com/hbm/blocks/generic/BlockMarker.java b/src/main/java/com/hbm/blocks/generic/BlockMarker.java
index b245f0326e..b56d223cf9 100644
--- a/src/main/java/com/hbm/blocks/generic/BlockMarker.java
+++ b/src/main/java/com/hbm/blocks/generic/BlockMarker.java
@@ -52,17 +52,17 @@ public boolean onBlockActivated(World world, BlockPos pos, IBlockState state, En
if(world.isRemote)
{
int i = ((TileEntityStructureMarker)world.getTileEntity(pos)).type + 1;
- if(i > 6)
- i -= 7;
+ if(i > 4)
+ i = 0;
if(i == 0)
player.sendMessage(new TextComponentTranslation("[Structure Marker] Set template: Factory"));
if(i == 1)
player.sendMessage(new TextComponentTranslation("[Structure Marker] Set template: Nuclear Reactor"));
if(i == 2)
player.sendMessage(new TextComponentTranslation("[Structure Marker] Set template: Nuclear Reactor with Concrete Casing"));
- if(i == 5)
+ if(i == 3)
player.sendMessage(new TextComponentTranslation("[Structure Marker] Set template: Watz Power Plant"));
- if(i == 6)
+ if(i == 4)
player.sendMessage(new TextComponentTranslation("[Structure Marker] Set template: Singularity-Anti-Fusion-Experiment"));
return true;
} else if(!player.isSneaking())
diff --git a/src/main/java/com/hbm/blocks/generic/BlockOre.java b/src/main/java/com/hbm/blocks/generic/BlockOre.java
index eebe7da730..f951a8ee6f 100644
--- a/src/main/java/com/hbm/blocks/generic/BlockOre.java
+++ b/src/main/java/com/hbm/blocks/generic/BlockOre.java
@@ -20,6 +20,7 @@
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.init.Blocks;
import net.minecraft.init.Items;
+import net.minecraft.util.EnumHand;
import net.minecraft.init.MobEffects;
import net.minecraft.init.SoundEvents;
import net.minecraft.item.Item;
@@ -29,15 +30,18 @@
import net.minecraft.util.SoundCategory;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World;
+import net.minecraft.world.IBlockAccess;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
public class BlockOre extends Block implements IItemHazard {
ItemHazardModule module;
+ public static int xp;
- public BlockOre(Material materialIn, String name, int harvestLvl) {
+ public BlockOre(Material materialIn, String name, int harvestLvl, int xp) {
super(materialIn);
+ this.xp = xp;
this.setUnlocalizedName(name);
this.setRegistryName(name);
this.setCreativeTab(MainRegistry.controlTab);
@@ -46,6 +50,10 @@ public BlockOre(Material materialIn, String name, int harvestLvl) {
this.module = new ItemHazardModule();
ModBlocks.ALL_BLOCKS.add(this);
}
+
+ public BlockOre(Material materialIn, String name, int harvestLvl) {
+ this(materialIn, name, harvestLvl, 2);
+ }
public BlockOre(Material mat, SoundType sound, String name, int harvestLvl){
this(mat, name, harvestLvl);
@@ -56,6 +64,11 @@ public BlockOre(Material mat, SoundType sound, String name, int harvestLvl){
public ItemHazardModule getModule() {
return module;
}
+
+ @Override
+ public int getExpDrop(IBlockState state, IBlockAccess world, BlockPos pos, int fortune){
+ return xp;
+ }
@Override
public Item getItemDropped(IBlockState state, Random rand, int fortune) {
@@ -107,7 +120,7 @@ public Item getItemDropped(IBlockState state, Random rand, int fortune) {
}
if(this == ModBlocks.block_meteor_treasure)
{
- switch(rand.nextInt(37)) {
+ switch(rand.nextInt(35)) {
case 0: return ModItems.coil_advanced_alloy;
case 1: return ModItems.plate_advanced_alloy;
case 2: return ModItems.powder_desh_mix;
@@ -143,8 +156,6 @@ public Item getItemDropped(IBlockState state, Random rand, int fortune) {
case 32: return ModItems.gun_mirv_ammo;
case 33: return ModItems.gun_defabricator_ammo;
case 34: return ModItems.gun_osipr_ammo2;
- case 35: return ModItems.glitch;
- case 36: return ModItems.nugget_radspice;
}
}
if(this == ModBlocks.deco_aluminium)
@@ -253,6 +264,18 @@ public void addInformation(ItemStack stack, World player, List tooltip,
}
}
+ @Override
+ public void onEntityWalk(World worldIn, BlockPos pos, Entity entity) {
+ if(entity instanceof EntityLivingBase)
+ this.module.applyEffects((EntityLivingBase)entity, 0.5F, 0, false, EnumHand.MAIN_HAND);
+ }
+
+ @Override
+ public void onEntityCollidedWithBlock(World worldIn, BlockPos pos, IBlockState state, Entity entity){
+ if(entity instanceof EntityLivingBase)
+ this.module.applyEffects((EntityLivingBase)entity, 0.5F, 0, false, EnumHand.MAIN_HAND);
+ }
+
@Override
public Block setSoundType(SoundType sound) {
return super.setSoundType(sound);
diff --git a/src/main/java/com/hbm/blocks/generic/BlockOutgas.java b/src/main/java/com/hbm/blocks/generic/BlockOutgas.java
index 19913cbf20..cb10c4ad2e 100644
--- a/src/main/java/com/hbm/blocks/generic/BlockOutgas.java
+++ b/src/main/java/com/hbm/blocks/generic/BlockOutgas.java
@@ -6,6 +6,7 @@
import com.hbm.interfaces.IItemHazard;
import com.hbm.lib.ForgeDirection;
import com.hbm.config.GeneralConfig;
+import com.hbm.saveddata.RadiationSavedData;
import com.hbm.modules.ItemHazardModule;
import net.minecraft.block.Block;
@@ -27,7 +28,7 @@ public class BlockOutgas extends BlockOre implements IItemHazard {
ItemHazardModule module;
public BlockOutgas(Material mat, boolean randomTick, int rate, boolean onBreak, String s) {
- super(mat, s, -1);
+ super(mat, s, 1);
this.module = new ItemHazardModule();
this.setTickRandomly(randomTick);
this.randomTick = randomTick;
@@ -99,6 +100,9 @@ public void onEntityWalk(World world, BlockPos pos, Entity entity){
@Override
public void updateTick(World world, BlockPos pos, IBlockState state, Random rand){
+ if(this == ModBlocks.block_corium_cobble) RadiationSavedData.incrementRad(world, pos, 1000F, 10000F);
+ if(this == ModBlocks.ancient_scrap) RadiationSavedData.incrementRad(world, pos, 150F, 1500F);
+
ForgeDirection dir = ForgeDirection.getOrientation(rand.nextInt(6));
if(world.getBlockState(new BlockPos(pos.getX() + dir.offsetX, pos.getY() + dir.offsetY, pos.getZ() + dir.offsetZ)).getBlock() == Blocks.AIR) {
diff --git a/src/main/java/com/hbm/blocks/generic/BlockRotatablePillarHazard.java b/src/main/java/com/hbm/blocks/generic/BlockRotatablePillarHazard.java
new file mode 100644
index 0000000000..b983196bc1
--- /dev/null
+++ b/src/main/java/com/hbm/blocks/generic/BlockRotatablePillarHazard.java
@@ -0,0 +1,27 @@
+package com.hbm.blocks.generic;
+
+import com.hbm.interfaces.IItemHazard;
+import com.hbm.modules.ItemHazardModule;
+
+import net.minecraft.block.SoundType;
+import net.minecraft.block.material.Material;
+
+public class BlockRotatablePillarHazard extends BlockRotatablePillar implements IItemHazard {
+
+ ItemHazardModule module;
+
+ public BlockRotatablePillarHazard(Material materialIn, String s) {
+ super(materialIn, s);
+ this.module = new ItemHazardModule();
+ }
+
+ public BlockRotatablePillarHazard(Material mat, SoundType type, String s) {
+ this(mat, s);
+ this.setSoundType(type);
+ }
+
+ @Override
+ public ItemHazardModule getModule() {
+ return module;
+ }
+}
diff --git a/src/main/java/com/hbm/blocks/generic/BlockStorageCrate.java b/src/main/java/com/hbm/blocks/generic/BlockStorageCrate.java
index 56b619b9ed..0ebd94be97 100644
--- a/src/main/java/com/hbm/blocks/generic/BlockStorageCrate.java
+++ b/src/main/java/com/hbm/blocks/generic/BlockStorageCrate.java
@@ -9,6 +9,7 @@
import com.hbm.lib.InventoryHelper;
import com.hbm.lib.Library;
import com.hbm.main.MainRegistry;
+import com.hbm.config.MachineConfig;
import com.hbm.tileentity.machine.TileEntityLockableBase;
import com.hbm.tileentity.machine.TileEntityCrateIron;
import com.hbm.tileentity.machine.TileEntityCrateSteel;
@@ -140,8 +141,8 @@ public boolean removedByPlayer(IBlockState state, World world, BlockPos pos, Ent
if(!nbt.hasNoTags()) {
drop.setTagCompound(nbt);
- if(nbt.toString().length() > 6000) {
- player.sendMessage(new TextComponentString("§cWarning: Container NBT exceeds 6kB, contents will be ejected!"));
+ if(nbt.toString().length() > MachineConfig.crateByteSize * 1000) {
+ player.sendMessage(new TextComponentString("§cWarning: Container NBT exceeds "+MachineConfig.crateByteSize+"kB, contents will be ejected!"));
InventoryHelper.dropInventoryItems(world, pos, world.getTileEntity(pos));
InventoryHelper.spawnItemStack(world, pos.getX() + 0.5, pos.getY() + 0.5, pos.getZ() + 0.5, new ItemStack(Item.getItemFromBlock(this)));
return world.setBlockToAir(pos);
diff --git a/src/main/java/com/hbm/blocks/items/ItemBlockHazard.java b/src/main/java/com/hbm/blocks/items/ItemBlockHazard.java
index 1e61420c29..e652d486ff 100644
--- a/src/main/java/com/hbm/blocks/items/ItemBlockHazard.java
+++ b/src/main/java/com/hbm/blocks/items/ItemBlockHazard.java
@@ -4,6 +4,7 @@
import com.hbm.interfaces.IItemHazard;
import com.hbm.modules.ItemHazardModule;
+import com.hbm.blocks.generic.BlockHazardFuel;
import net.minecraft.block.Block;
import net.minecraft.client.util.ITooltipFlag;
@@ -17,6 +18,7 @@
public class ItemBlockHazard extends ItemBlock {
+ private int burntime = 0;
public ItemHazardModule module;
public ItemBlockHazard(Block block) {
@@ -25,11 +27,20 @@ public ItemBlockHazard(Block block) {
if(block instanceof IItemHazard) {
this.module = ((IItemHazard)block).getModule();
}
+
+ if(block instanceof BlockHazardFuel) {
+ this.burntime = ((BlockHazardFuel)block).getBurnTime();
+ }
}
public ItemHazardModule getModule() {
return module;
}
+
+ @Override
+ public int getItemBurnTime(ItemStack itemStack) {
+ return burntime;
+ }
@Override
public void onUpdate(ItemStack stack, World worldIn, Entity entity, int itemSlot, boolean isSelected){
diff --git a/src/main/java/com/hbm/blocks/machine/BlockDeconRad.java b/src/main/java/com/hbm/blocks/machine/BlockDeconRad.java
index 53d460be75..b278f89fd1 100644
--- a/src/main/java/com/hbm/blocks/machine/BlockDeconRad.java
+++ b/src/main/java/com/hbm/blocks/machine/BlockDeconRad.java
@@ -75,5 +75,4 @@ public void onUpdate() {
public EnumBlockRenderType getRenderType(IBlockState state) {
return EnumBlockRenderType.MODEL;
}
-
}
diff --git a/src/main/java/com/hbm/blocks/machine/FactoryCoreAdvanced.java b/src/main/java/com/hbm/blocks/machine/FactoryCoreAdvanced.java
index 011464f866..7ad3773e09 100644
--- a/src/main/java/com/hbm/blocks/machine/FactoryCoreAdvanced.java
+++ b/src/main/java/com/hbm/blocks/machine/FactoryCoreAdvanced.java
@@ -1,7 +1,6 @@
package com.hbm.blocks.machine;
import com.hbm.blocks.ModBlocks;
-import com.hbm.lib.InventoryHelper;
import com.hbm.tileentity.machine.TileEntityCoreAdvanced;
import net.minecraft.block.BlockContainer;
@@ -27,12 +26,6 @@ public TileEntity createNewTileEntity(World worldIn, int meta) {
return new TileEntityCoreAdvanced();
}
- @Override
- public void breakBlock(World worldIn, BlockPos pos, IBlockState state) {
- InventoryHelper.dropInventoryItems(worldIn, pos, ((TileEntityCoreAdvanced)worldIn.getTileEntity(pos)).dropProvider);
- super.breakBlock(worldIn, pos, state);
- }
-
@Override
public EnumBlockRenderType getRenderType(IBlockState state) {
return EnumBlockRenderType.MODEL;
diff --git a/src/main/java/com/hbm/blocks/machine/FactoryCoreTitanium.java b/src/main/java/com/hbm/blocks/machine/FactoryCoreTitanium.java
index 275e40f0c0..173ed749fb 100644
--- a/src/main/java/com/hbm/blocks/machine/FactoryCoreTitanium.java
+++ b/src/main/java/com/hbm/blocks/machine/FactoryCoreTitanium.java
@@ -1,7 +1,6 @@
package com.hbm.blocks.machine;
import com.hbm.blocks.ModBlocks;
-import com.hbm.lib.InventoryHelper;
import com.hbm.tileentity.machine.TileEntityCoreTitanium;
import net.minecraft.block.BlockContainer;
@@ -27,12 +26,6 @@ public TileEntity createNewTileEntity(World worldIn, int meta) {
return new TileEntityCoreTitanium();
}
- @Override
- public void breakBlock(World worldIn, BlockPos pos, IBlockState state) {
- InventoryHelper.dropInventoryItems(worldIn, pos, ((TileEntityCoreTitanium)worldIn.getTileEntity(pos)).dropProvider);
- super.breakBlock(worldIn, pos, state);
- }
-
@Override
public EnumBlockRenderType getRenderType(IBlockState state) {
return EnumBlockRenderType.MODEL;
diff --git a/src/main/java/com/hbm/blocks/machine/FactoryHatch.java b/src/main/java/com/hbm/blocks/machine/FactoryHatch.java
index 64a57acbf6..7c5e8007a1 100644
--- a/src/main/java/com/hbm/blocks/machine/FactoryHatch.java
+++ b/src/main/java/com/hbm/blocks/machine/FactoryHatch.java
@@ -2,10 +2,12 @@
import com.hbm.blocks.ModBlocks;
import com.hbm.main.MainRegistry;
+import com.hbm.tileentity.machine.TileEntityFactoryHatch;
import com.hbm.tileentity.machine.TileEntityCoreAdvanced;
import com.hbm.tileentity.machine.TileEntityCoreTitanium;
import net.minecraft.block.Block;
+import net.minecraft.block.BlockContainer;
import net.minecraft.block.BlockHorizontal;
import net.minecraft.block.material.Material;
import net.minecraft.block.properties.IProperty;
@@ -15,6 +17,8 @@
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
+import net.minecraft.tileentity.TileEntity;
+import net.minecraft.util.EnumBlockRenderType;
import net.minecraft.util.EnumFacing;
import net.minecraft.util.EnumHand;
import net.minecraft.util.Mirror;
@@ -23,7 +27,7 @@
import net.minecraft.util.text.TextComponentTranslation;
import net.minecraft.world.World;
-public class FactoryHatch extends Block {
+public class FactoryHatch extends BlockContainer {
public static final PropertyDirection FACING = BlockHorizontal.FACING;
@@ -39,6 +43,11 @@ public FactoryHatch(Material materialIn, String s) {
public void onBlockPlacedBy(World worldIn, BlockPos pos, IBlockState state, EntityLivingBase placer, ItemStack stack) {
worldIn.setBlockState(pos, state.withProperty(FACING, placer.getHorizontalFacing().getOpposite()), 2);
}
+
+ @Override
+ public TileEntity createNewTileEntity(World worldIn, int meta) {
+ return new TileEntityFactoryHatch();
+ }
@Override
public boolean onBlockActivated(World world, BlockPos pos, IBlockState state, EntityPlayer player, EnumHand hand, EnumFacing facing, float hitX, float hitY, float hitZ) {
@@ -178,6 +187,11 @@ public IBlockState getStateForPlacement(World world, BlockPos pos, EnumFacing fa
return this.getDefaultState().withProperty(FACING, placer.getHorizontalFacing().getOpposite());
}
+ @Override
+ public EnumBlockRenderType getRenderType(IBlockState state) {
+ return EnumBlockRenderType.MODEL;
+ }
+
@Override
protected BlockStateContainer createBlockState() {
return new BlockStateContainer(this, new IProperty[] { FACING });
diff --git a/src/main/java/com/hbm/blocks/machine/MachineCharger.java b/src/main/java/com/hbm/blocks/machine/MachineCharger.java
new file mode 100644
index 0000000000..3b02d954e6
--- /dev/null
+++ b/src/main/java/com/hbm/blocks/machine/MachineCharger.java
@@ -0,0 +1,78 @@
+package com.hbm.blocks.machine;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import com.hbm.lib.Library;
+import com.hbm.blocks.ILookOverlay;
+import com.hbm.blocks.ITooltipProvider;
+import com.hbm.blocks.ModBlocks;
+import com.hbm.tileentity.machine.TileEntityCharger;
+
+import net.minecraft.block.BlockContainer;
+import net.minecraft.block.state.IBlockState;
+import net.minecraft.block.material.Material;
+import net.minecraft.client.util.ITooltipFlag;
+import net.minecraft.item.ItemStack;
+import net.minecraft.tileentity.TileEntity;
+import net.minecraft.util.math.BlockPos;
+import net.minecraft.util.math.AxisAlignedBB;
+import net.minecraft.util.EnumBlockRenderType;
+import net.minecraft.world.World;
+import net.minecraftforge.fml.relauncher.Side;
+import net.minecraftforge.fml.relauncher.SideOnly;
+import net.minecraftforge.client.event.RenderGameOverlayEvent.Pre;
+
+public class MachineCharger extends BlockContainer implements ITooltipProvider, ILookOverlay {
+
+ public final long maxThroughput;
+ public final boolean pointingUp;
+
+ public MachineCharger(Material mat, String s, long max, boolean pointingUp) {
+ super(mat);
+ this.maxThroughput = max / 20L;
+ this.pointingUp = pointingUp;
+ this.setUnlocalizedName(s);
+ this.setRegistryName(s);
+ ModBlocks.ALL_BLOCKS.add(this);
+ }
+
+ @Override
+ public TileEntity createNewTileEntity(World world, int meta) {
+ return new TileEntityCharger();
+ }
+
+ @Override
+ public EnumBlockRenderType getRenderType(IBlockState state) {
+ return EnumBlockRenderType.MODEL;
+ }
+
+ @Override
+ @SideOnly(Side.CLIENT)
+ public void addInformation(ItemStack stack, World player, List tooltip, ITooltipFlag advanced) {
+ tooltip.add("§aMax Chargerate: "+Library.getShortNumber(20 * maxThroughput)+"HE/s");
+ this.addStandardInfo(tooltip);
+ super.addInformation(stack, player, tooltip, advanced);
+ }
+
+ @Override
+ public void printHook(Pre event, World world, int x, int y, int z) {
+ TileEntity te = world.getTileEntity(new BlockPos(x, y, z));
+
+ if(!(te instanceof TileEntityCharger))
+ return;
+
+ TileEntityCharger charger = (TileEntityCharger) te;
+
+ List text = new ArrayList();
+
+ if(charger.totalCapacity > 0){
+ text.add(Library.getShortNumber(charger.totalEnergy) + "/" + Library.getShortNumber(charger.totalCapacity) + " HE");
+ text.add("§a-> §r" + Library.getShortNumber(20 * charger.actualCharge) + "/" + Library.getShortNumber(20 * charger.charge) + "HE/s");
+ text.add("&["+Library.getColorProgress((double)charger.totalEnergy/(double)charger.totalCapacity)+"&] "+Library.getPercentage((double)charger.totalEnergy/(double)charger.totalCapacity)+"%");
+ } else {
+ text.add("Nothing to charge");
+ }
+ ILookOverlay.printGeneric(event, getLocalizedName(), 0xffff00, 0x404000, text);
+ }
+}
diff --git a/src/main/java/com/hbm/blocks/machine/MachineChungus.java b/src/main/java/com/hbm/blocks/machine/MachineChungus.java
index 3bacd371a1..13f0e9c045 100644
--- a/src/main/java/com/hbm/blocks/machine/MachineChungus.java
+++ b/src/main/java/com/hbm/blocks/machine/MachineChungus.java
@@ -154,11 +154,11 @@ public void printHook(Pre event, World world, int x, int y, int z) {
List text = new ArrayList();
text.add(Library.getShortNumber(chungus.power) + "/" + Library.getShortNumber(chungus.maxPower) + " HE");
+ text.add("§a-> §r" + Library.getShortNumber(20 * chungus.powerProduction) + "HE/s");
if(chungus.types[0] != null)
text.add("§a-> §r" + chungus.types[0].getLocalizedName(new FluidStack(chungus.types[0], 1)) + ": " + chungus.tanks[0].getFluidAmount() + "/" + chungus.tanks[0].getCapacity() + "mB");
if(chungus.types[1] != null)
text.add("§c<- §r" + chungus.types[1].getLocalizedName(new FluidStack(chungus.types[1], 1)) + ": " + chungus.tanks[1].getFluidAmount() + "/" + chungus.tanks[1].getCapacity() + "mB");
-
ILookOverlay.printGeneric(event, getLocalizedName(), 0xffff00, 0x404000, text);
}
}
\ No newline at end of file
diff --git a/src/main/java/com/hbm/blocks/machine/MachineDiFurnace.java b/src/main/java/com/hbm/blocks/machine/MachineDiFurnace.java
index e64c81f8b8..cd7fc7f301 100644
--- a/src/main/java/com/hbm/blocks/machine/MachineDiFurnace.java
+++ b/src/main/java/com/hbm/blocks/machine/MachineDiFurnace.java
@@ -211,38 +211,41 @@ public void randomDisplayTick(IBlockState stateIn, World worldIn, BlockPos pos,
if (this.isActive)
{
EnumFacing enumfacing = (EnumFacing)stateIn.getValue(FACING);
- double d0 = (double)pos.getX() + 0.5D;
- double d1 = (double)pos.getY() + rand.nextDouble() * 6.0D / 16.0D;
- double d2 = (double)pos.getZ() + 0.5D;
- double d4 = rand.nextDouble() * 0.6D - 0.3D;
+ double x0 = (double)pos.getX() + 0.5D;
+ double y0 = (double)pos.getY() + rand.nextDouble() * 6.0D / 16.0D + 0.2D;
+ double z0 = (double)pos.getZ() + 0.5D;
+ double sideOff = 0.52F;
+ double sideRand = rand.nextFloat() * 0.5 - 0.25;
+ double xOff = rand.nextFloat() * 0.375 - 0.1875;
+ double zOff = rand.nextFloat() * 0.375 - 0.1875;
+ double smokeY = pos.getY() + 1;
if (worldIn.getBlockState(pos.offset(EnumFacing.UP, 1)).getBlock() == ModBlocks.machine_difurnace_ext) {
- d1 += 1;
+ smokeY += 1;
}
- if (rand.nextDouble() < 0.1D)
- {
+ if (rand.nextDouble() < 0.1D) {
worldIn.playSound((double)pos.getX() + 0.5D, (double)pos.getY(), (double)pos.getZ() + 0.5D, SoundEvents.BLOCK_FURNACE_FIRE_CRACKLE, SoundCategory.BLOCKS, 1.0F, 1.0F, false);
}
switch (enumfacing)
{
case WEST:
- worldIn.spawnParticle(EnumParticleTypes.SMOKE_NORMAL, d0 - 0.52D, d1, d2 + d4, 0.0D, 0.0D, 0.0D);
- worldIn.spawnParticle(EnumParticleTypes.FLAME, d0 - 0.52D, d1, d2 + d4, 0.0D, 0.0D, 0.0D);
+ worldIn.spawnParticle(EnumParticleTypes.FLAME, x0 - sideOff, y0, z0 + sideRand, 0.0D, 0.0D, 0.0D);
+ worldIn.spawnParticle(EnumParticleTypes.SMOKE_NORMAL, x0 + xOff, smokeY, z0 + zOff, 0.0D, 0.0D, 0.0D);
break;
case EAST:
- worldIn.spawnParticle(EnumParticleTypes.SMOKE_NORMAL, d0 + 0.52D, d1, d2 + d4, 0.0D, 0.0D, 0.0D);
- worldIn.spawnParticle(EnumParticleTypes.FLAME, d0 + 0.52D, d1, d2 + d4, 0.0D, 0.0D, 0.0D);
+ worldIn.spawnParticle(EnumParticleTypes.FLAME, x0 + sideOff, y0, z0 + sideRand, 0.0D, 0.0D, 0.0D);
+ worldIn.spawnParticle(EnumParticleTypes.SMOKE_NORMAL, x0 + xOff, smokeY, z0 + zOff, 0.0D, 0.0D, 0.0D);
break;
case NORTH:
- worldIn.spawnParticle(EnumParticleTypes.SMOKE_NORMAL, d0 + d4, d1, d2 - 0.52D, 0.0D, 0.0D, 0.0D);
- worldIn.spawnParticle(EnumParticleTypes.FLAME, d0 + d4, d1, d2 - 0.52D, 0.0D, 0.0D, 0.0D);
+ worldIn.spawnParticle(EnumParticleTypes.FLAME, x0 + sideRand, y0, z0 - sideOff, 0.0D, 0.0D, 0.0D);
+ worldIn.spawnParticle(EnumParticleTypes.SMOKE_NORMAL, x0 + xOff, smokeY, z0 + zOff, 0.0D, 0.0D, 0.0D);
break;
case SOUTH:
- worldIn.spawnParticle(EnumParticleTypes.SMOKE_NORMAL, d0 + d4, d1, d2 + 0.52D, 0.0D, 0.0D, 0.0D);
- worldIn.spawnParticle(EnumParticleTypes.FLAME, d0 + d4, d1, d2 + 0.52D, 0.0D, 0.0D, 0.0D);
- default:
+ worldIn.spawnParticle(EnumParticleTypes.FLAME, x0 + sideRand, y0, z0 + sideOff, 0.0D, 0.0D, 0.0D);
+ worldIn.spawnParticle(EnumParticleTypes.SMOKE_NORMAL, x0 + xOff, smokeY, z0 + zOff, 0.0D, 0.0D, 0.0D);
+ default:
break;
}
}
diff --git a/src/main/java/com/hbm/blocks/machine/MachineTransformer.java b/src/main/java/com/hbm/blocks/machine/MachineTransformer.java
deleted file mode 100644
index b72282bdca..0000000000
--- a/src/main/java/com/hbm/blocks/machine/MachineTransformer.java
+++ /dev/null
@@ -1,35 +0,0 @@
-package com.hbm.blocks.machine;
-
-import com.hbm.blocks.ModBlocks;
-import com.hbm.main.MainRegistry;
-import com.hbm.tileentity.machine.TileEntityMachineTransformer;
-
-import net.minecraft.block.BlockContainer;
-import net.minecraft.block.material.Material;
-import net.minecraft.block.state.IBlockState;
-import net.minecraft.tileentity.TileEntity;
-import net.minecraft.util.EnumBlockRenderType;
-import net.minecraft.world.World;
-
-public class MachineTransformer extends BlockContainer {
-
- public MachineTransformer(Material materialIn, long b, int d, String s) {
- super(materialIn);
- this.setUnlocalizedName(s);
- this.setRegistryName(s);
- this.setCreativeTab(MainRegistry.machineTab);
-
- ModBlocks.ALL_BLOCKS.add(this);
- }
-
- @Override
- public TileEntity createNewTileEntity(World worldIn, int meta) {
- return new TileEntityMachineTransformer();
- }
-
- @Override
- public EnumBlockRenderType getRenderType(IBlockState state) {
- return EnumBlockRenderType.MODEL;
- }
-
-}
diff --git a/src/main/java/com/hbm/blocks/machine/pile/BlockGraphite.java b/src/main/java/com/hbm/blocks/machine/pile/BlockGraphite.java
index 83d00de493..d2b920830a 100644
--- a/src/main/java/com/hbm/blocks/machine/pile/BlockGraphite.java
+++ b/src/main/java/com/hbm/blocks/machine/pile/BlockGraphite.java
@@ -1,7 +1,7 @@
package com.hbm.blocks.machine.pile;
import com.hbm.blocks.ModBlocks;
-import com.hbm.blocks.generic.BlockFlammable;
+import com.hbm.blocks.generic.BlockHazardFuel;
import com.hbm.items.ModItems;
import com.hbm.packet.PacketDispatcher;
import com.hbm.packet.ParticleBurstPacket;
@@ -21,12 +21,12 @@
import net.minecraft.world.World;
import net.minecraftforge.fml.common.network.NetworkRegistry.TargetPoint;
-public class BlockGraphite extends BlockFlammable implements IToolable {
+public class BlockGraphite extends BlockHazardFuel implements IToolable {
- public BlockGraphite(Material mat, int en, int flam, String s) {
- super(mat, en, flam, s);
+ public BlockGraphite(Material mat, String s, int en, int flam, int burntime) {
+ super(mat, s, en, flam, burntime);
}
@Override
diff --git a/src/main/java/com/hbm/blocks/machine/pile/BlockGraphiteDrilledBase.java b/src/main/java/com/hbm/blocks/machine/pile/BlockGraphiteDrilledBase.java
index 24d368027e..8781b042d8 100644
--- a/src/main/java/com/hbm/blocks/machine/pile/BlockGraphiteDrilledBase.java
+++ b/src/main/java/com/hbm/blocks/machine/pile/BlockGraphiteDrilledBase.java
@@ -3,7 +3,7 @@
import java.util.Random;
import com.hbm.blocks.ModBlocks;
-import com.hbm.blocks.generic.BlockFlammable;
+import com.hbm.blocks.generic.BlockHazardFuel;
import com.hbm.items.ModItems;
import net.minecraft.block.SoundType;
@@ -20,12 +20,12 @@
import net.minecraft.world.IBlockAccess;
import net.minecraft.world.World;
-public class BlockGraphiteDrilledBase extends BlockFlammable {
+public class BlockGraphiteDrilledBase extends BlockHazardFuel {
public static final PropertyEnum AXIS = PropertyEnum.create("axis", EnumFacing.Axis.class);
public BlockGraphiteDrilledBase(String s) {
- super(ModBlocks.block_graphite.getDefaultState().getMaterial(), ((BlockFlammable) ModBlocks.block_graphite).encouragement, ((BlockFlammable) ModBlocks.block_graphite).flammability, s);
+ super(ModBlocks.block_graphite.getDefaultState().getMaterial(), s, ((BlockHazardFuel) ModBlocks.block_graphite).encouragement, ((BlockHazardFuel) ModBlocks.block_graphite).flammability, 16000);
this.setCreativeTab(null);
this.setSoundType(SoundType.METAL);
this.setHardness(5.0F);
@@ -65,5 +65,4 @@ public IBlockState getStateFromMeta(int meta){
protected BlockStateContainer createBlockState(){
return new BlockStateContainer(this, AXIS);
}
-
}
diff --git a/src/main/java/com/hbm/blocks/network/BlockFluidPipeMk2.java b/src/main/java/com/hbm/blocks/network/BlockFluidPipeMk2.java
index abe23cd178..00cef75283 100644
--- a/src/main/java/com/hbm/blocks/network/BlockFluidPipeMk2.java
+++ b/src/main/java/com/hbm/blocks/network/BlockFluidPipeMk2.java
@@ -143,6 +143,11 @@ public EnumBlockRenderType getRenderType(IBlockState state) {
return EnumBlockRenderType.ENTITYBLOCK_ANIMATED;
}
+ @Override
+ public boolean isFullBlock(IBlockState state) {
+ return false;
+ }
+
@Override
public boolean isFullCube(IBlockState state) {
return false;
diff --git a/src/main/java/com/hbm/config/BombConfig.java b/src/main/java/com/hbm/config/BombConfig.java
index a260a54956..d9a4e1af40 100644
--- a/src/main/java/com/hbm/config/BombConfig.java
+++ b/src/main/java/com/hbm/config/BombConfig.java
@@ -19,6 +19,17 @@ public class BombConfig {
public static int fatmanRadius = 35;
public static int nukaRadius = 25;
public static int aSchrabRadius = 20;
+ public static int riggedStarRange = 50;
+ public static int riggedStarTicks = 60 * 20;
+
+ public static int maxCustomTNTRadius = 150;
+ public static int maxCustomNukeRadius = 250;
+ public static int maxCustomHydroRadius = 400;
+ public static int maxCustomDirtyRadius = 200;
+ public static int maxCustomBaleRadius = 750;
+ public static int maxCustomSchrabRadius = 500;
+ public static int maxCustomSolRadius = 1000;
+ public static int maxCustomEuphLvl = 20;
public static int mk4 = 1024;
public static int blastSpeed = 1024;
@@ -74,6 +85,46 @@ public static void loadFromConfig(Configuration config) {
Property propN2 = config.get(CATEGORY_NUKES, "3.13_n2Radius", 200);
propN2.setComment("Radius of the N2 mine");
n2Radius = propN2.getInt();
+
+ Property propRS1 = config.get(CATEGORY_NUKES, "3.14_riggedStarRadius", 50);
+ propRS1.setComment("Radius of the Rigged Star Blaster Energy Cell");
+ riggedStarRange = propRS1.getInt();
+ Property propRS2 = config.get(CATEGORY_NUKES, "3.15_riggedStarFuse", 1200);
+ propRS2.setComment("Time in ticks before the Rigged Star Blaster Energy Cell explodes after being dropped - default 60s");
+ riggedStarTicks = propRS2.getInt();
+
+ Property propTNT = config.get(CATEGORY_NUKES, "4.00_maxCustomTNTRadius", 150);
+ propTNT.setComment("Maximum TNT radius of custom nukes - default 150m");
+ maxCustomTNTRadius = propTNT.getInt();
+
+ Property propNuke = config.get(CATEGORY_NUKES, "4.01_maxCustomNukeRadius", 250);
+ propNuke.setComment("Maximum Nuke radius of custom nukes - default 250m");
+ maxCustomNukeRadius = propNuke.getInt();
+
+ Property propHydro = config.get(CATEGORY_NUKES, "4.02_maxCustomHydroRadius", 400);
+ propHydro.setComment("Maximum Thermonuclear radius of custom nukes - default 400m");
+ maxCustomHydroRadius = propHydro.getInt();
+
+ Property propDirty = config.get(CATEGORY_NUKES, "4.04_maxCustomDirtyRadius", 200);
+ propDirty.setComment("Maximum fallout additional radius that can be added to custom nukes - default 200m");
+ maxCustomDirtyRadius = propDirty.getInt();
+
+ Property propBale = config.get(CATEGORY_NUKES, "4.03_maxCustomBaleRadius", 750);
+ propBale.setComment("Maximum balefire radius of custom nukes - default 750m");
+ maxCustomBaleRadius = propBale.getInt();
+
+ Property propSchrab = config.get(CATEGORY_NUKES, "4.05_maxCustomSchrabRadius", 500);
+ propSchrab.setComment("Maximum Antischrabidium radius of custom nukes - default 500m");
+ maxCustomSchrabRadius = propSchrab.getInt();
+
+ Property propSol = config.get(CATEGORY_NUKES, "4.06_maxCustomSolRadius", 1000);
+ propSol.setComment("Maximum Solinium radius of custom nukes - default 1000m");
+ maxCustomSolRadius = propSol.getInt();
+
+ Property propEuph = config.get(CATEGORY_NUKES, "4.07_maxCustomEuphLvl", 20);
+ propEuph.setComment("Maximum Euphemium Lvl of custom nukes (1Lvl = 100 Rays) - default 20");
+ maxCustomEuphLvl = propEuph.getInt();
+
final String CATEGORY_NUKE = "06_explosions";
Property propLimitExplosionLifespan = config.get(CATEGORY_NUKE, "6.00_limitExplosionLifespan", 0);
diff --git a/src/main/java/com/hbm/config/CompatibilityConfig.java b/src/main/java/com/hbm/config/CompatibilityConfig.java
index 4d2d4d49f6..d948a545ac 100644
--- a/src/main/java/com/hbm/config/CompatibilityConfig.java
+++ b/src/main/java/com/hbm/config/CompatibilityConfig.java
@@ -35,6 +35,7 @@ public class CompatibilityConfig {
public static HashMap ironClusterSpawn;
public static HashMap titaniumClusterSpawn;
public static HashMap aluminiumClusterSpawn;
+ public static HashMap copperClusterSpawn;
public static HashMap reiiumSpawn;
public static HashMap weidaniumSpawn;
@@ -141,6 +142,7 @@ public static void loadFromConfig(Configuration config) {
ironClusterSpawn = CommonConfig.createConfigHashMap(config, CATEGORY_DIMORE, "01.22_ironClusterSpawn", "Amount of iron cluster veins per chunk - (Int:Int)", "Int", "Int", new String[]{ "0:4" }, ":");
titaniumClusterSpawn = CommonConfig.createConfigHashMap(config, CATEGORY_DIMORE, "01.23_titaniumClusterSpawn", "Amount of titanium cluster veins per chunk - (Int:Int)", "Int", "Int", new String[]{ "0:2" }, ":");
aluminiumClusterSpawn = CommonConfig.createConfigHashMap(config, CATEGORY_DIMORE, "01.24_aluminiumClusterSpawn", "Amount of aluminium cluster veins per chunk - (Int:Int)", "Int", "Int", new String[]{ "0:3" }, ":");
+ copperClusterSpawn = CommonConfig.createConfigHashMap(config, CATEGORY_DIMORE, "01.24_copperClusterSpawn", "Amount of copper cluster veins per chunk - (Int:Int)", "Int", "Int", new String[]{ "0:3" }, ":");
reiiumSpawn = CommonConfig.createConfigHashMap(config, CATEGORY_DIMORE, "01.25_reiiumSpawnRate", "Amount of reiium ore veins per chunk - (Int:Int)", "Int", "Int", new String[]{ "-29:1" }, ":");
weidaniumSpawn = CommonConfig.createConfigHashMap(config, CATEGORY_DIMORE, "01.26_weidaniumSpawnRate", "Amount of weidanium ore veins per chunk - (Int:Int)", "Int", "Int", new String[]{ "-31:1" }, ":");
diff --git a/src/main/java/com/hbm/config/GeneralConfig.java b/src/main/java/com/hbm/config/GeneralConfig.java
index 2ac4212337..1b32665118 100644
--- a/src/main/java/com/hbm/config/GeneralConfig.java
+++ b/src/main/java/com/hbm/config/GeneralConfig.java
@@ -67,7 +67,7 @@ public class GeneralConfig {
public static boolean bulletHoleNormalMapping = true;
public static int flowingDecalAmountMax = 20;
public static boolean bloodFX = true;
- public static int crucibleMaxCharges = 3;
+ public static int crucibleMaxCharges = 16;
public static boolean enableReEval = true;
public static boolean enable528 = false;
@@ -177,10 +177,10 @@ public static void loadFromConfig(Configuration config){
flashlightVolumetric = false;
}
- crucibleMaxCharges = CommonConfig.createConfigInt(config, CATEGORY_GENERAL, "1.33_crucible_max_charges", "How many times you can use the crucible before recharge", 3);
+ crucibleMaxCharges = CommonConfig.createConfigInt(config, CATEGORY_GENERAL, "1.33_crucible_max_charges", "How many times you can use the crucible before recharge", 16);
if(crucibleMaxCharges <= 0){
- crucibleMaxCharges = 3;
+ crucibleMaxCharges = 16;
}
enableWelcomeMessage = CommonConfig.createConfigBool(config, CATEGORY_GENERAL, "1.34_enableWelcomeMessage", "Enables the welcome message which appears in the chat when you load into the game", true);
diff --git a/src/main/java/com/hbm/config/MachineConfig.java b/src/main/java/com/hbm/config/MachineConfig.java
index dbe887e04f..e6f2d43644 100644
--- a/src/main/java/com/hbm/config/MachineConfig.java
+++ b/src/main/java/com/hbm/config/MachineConfig.java
@@ -43,6 +43,8 @@ public class MachineConfig {
public static boolean uuMixerFluidListIsWhitelist = false;
public static HashSet blacklistedMixerFluids;
+ public static int crateByteSize = 8;
+
public static boolean isFluidAllowed(Fluid f){
boolean isInList = blacklistedMixerFluids.contains(f.getName());
if(uuMixerFluidListIsWhitelist) return isInList;
@@ -93,5 +95,7 @@ public static void loadFromConfig(Configuration config) {
uuMixerFluidRatio = CommonConfig.createConfigInt(config, CATEGORY_MACHINE, generateConfigName(24, "uuMixerFluidRatio"), "How much mB of UU-Matter is used per mB of output fluid", 100);
uuMixerFluidListIsWhitelist = CommonConfig.createConfigBool(config, CATEGORY_MACHINE, generateConfigName(25, "uuMixerFluidListIsWhitelist"), "If true then the follwing list of fluids is a whitelist. Otherwise it is a Blacklist", false);
blacklistedMixerFluids = CommonConfig.createConfigHashSet(config, CATEGORY_MACHINE, generateConfigName(26, "blacklistedUUMixerFluids"), "List of fluids that can not be made by UU Mixer. - (String)", "String", new String[]{ "liquid_osmiridium" });
+
+ crateByteSize = CommonConfig.createConfigInt(config, CATEGORY_MACHINE, generateConfigName(27, "crateMaxByteSize"), "Controls how big the maximum storage size of mined crates can be. Warning going beond 32kb can cause freezing/crashes. - (int)", 8);
}
}
diff --git a/src/main/java/com/hbm/entity/effect/EntityFalloutRain.java b/src/main/java/com/hbm/entity/effect/EntityFalloutRain.java
index aa3105001f..2422812e53 100644
--- a/src/main/java/com/hbm/entity/effect/EntityFalloutRain.java
+++ b/src/main/java/com/hbm/entity/effect/EntityFalloutRain.java
@@ -329,7 +329,7 @@ else if(dist <= s6)
continue;
}
- if(bblock == Blocks.BEDROCK){
+ if(bblock == Blocks.BEDROCK || bblock == ModBlocks.ore_bedrock_oil || bblock == ModBlocks.ore_bedrock_block){
world.setBlockState(pos.add(0, 1, 0), ModBlocks.toxic_block.getDefaultState());
break;
}
diff --git a/src/main/java/com/hbm/entity/effect/EntityFalloutUnderGround.java b/src/main/java/com/hbm/entity/effect/EntityFalloutUnderGround.java
index 637fd5afa5..4fcae82e8f 100644
--- a/src/main/java/com/hbm/entity/effect/EntityFalloutUnderGround.java
+++ b/src/main/java/com/hbm/entity/effect/EntityFalloutUnderGround.java
@@ -204,7 +204,7 @@ else if(l <= s6)
world.setBlockState(pos, ModBlocks.sellafield_core.getDefaultState());
return;
- } else if(bblock == Blocks.BEDROCK){
+ } else if(bblock == Blocks.BEDROCK || bblock == ModBlocks.ore_bedrock_oil || bblock == ModBlocks.ore_bedrock_block){
world.setBlockState(pos.add(0, 1, 0), ModBlocks.toxic_block.getDefaultState());
return;
diff --git a/src/main/java/com/hbm/entity/grenade/EntityGrenadeIFToxic.java b/src/main/java/com/hbm/entity/grenade/EntityGrenadeIFToxic.java
index 8ca19fa478..80ffad8fb1 100644
--- a/src/main/java/com/hbm/entity/grenade/EntityGrenadeIFToxic.java
+++ b/src/main/java/com/hbm/entity/grenade/EntityGrenadeIFToxic.java
@@ -2,7 +2,6 @@
import com.hbm.explosion.ExplosionChaos;
import com.hbm.explosion.ExplosionLarge;
-import com.hbm.explosion.ExplosionNukeGeneric;
import com.hbm.items.ModItems;
import com.hbm.items.weapon.ItemGrenade;
@@ -37,7 +36,6 @@ public void explode() {
ExplosionLarge.jolt(world, posX, posY, posZ, 3, 200, 0.25);
ExplosionLarge.explode(world, posX, posY, posZ, 2, true, true, true);
ExplosionChaos.poison(world, (int)posX, (int)posY, (int)posZ, 12);
- ExplosionNukeGeneric.waste(world, (int)posX, (int)posY, (int)posZ, 12);
ExplosionChaos.spawnChlorine(world, posX, posY, posZ, 50, 1.5, 0);
}
}
diff --git a/src/main/java/com/hbm/entity/grenade/EntityGrenadePoison.java b/src/main/java/com/hbm/entity/grenade/EntityGrenadePoison.java
index 365470d417..2989d7f41f 100644
--- a/src/main/java/com/hbm/entity/grenade/EntityGrenadePoison.java
+++ b/src/main/java/com/hbm/entity/grenade/EntityGrenadePoison.java
@@ -1,6 +1,6 @@
package com.hbm.entity.grenade;
-import com.hbm.explosion.ExplosionNukeGeneric;
+import com.hbm.explosion.ExplosionChaos;
import com.hbm.items.ModItems;
import com.hbm.items.weapon.ItemGrenade;
@@ -34,8 +34,8 @@ public void explode() {
if (!this.world.isRemote)
{
this.setDead();
- this.world.createExplosion(this, this.posX, this.posY, this.posZ, 2.0F, true);
- ExplosionNukeGeneric.wasteNoSchrab(this.world, new BlockPos((int)this.posX, (int)this.posY, (int)this.posZ), 10);
+ ExplosionChaos.poison(world, (int)posX, (int)posY, (int)posZ, 15);
+ ExplosionChaos.spawnChlorine(world, posX, posY, posZ, 50, 1.5, 0);
}
}
diff --git a/src/main/java/com/hbm/entity/projectile/EntityFallingNuke.java b/src/main/java/com/hbm/entity/projectile/EntityFallingNuke.java
index a061a769e4..08064238a8 100644
--- a/src/main/java/com/hbm/entity/projectile/EntityFallingNuke.java
+++ b/src/main/java/com/hbm/entity/projectile/EntityFallingNuke.java
@@ -21,9 +21,10 @@ public class EntityFallingNuke extends EntityThrowable {
float tnt;
float nuke;
float hydro;
- float amat;
+ float bale;
float dirty;
float schrab;
+ float sol;
float euph;
public EntityFallingNuke(World worldIn) {
@@ -31,16 +32,17 @@ public EntityFallingNuke(World worldIn) {
this.ignoreFrustumCheck = true;
}
- public EntityFallingNuke(World p_i1582_1_, float tnt, float nuke, float hydro, float amat, float dirty, float schrab, float euph) {
+ public EntityFallingNuke(World p_i1582_1_, float tnt, float nuke, float hydro, float bale, float dirty, float schrab, float sol, float euph) {
super(p_i1582_1_);
this.ignoreFrustumCheck = true;
this.tnt = tnt;
this.nuke = nuke;
this.hydro = hydro;
- this.amat = amat;
+ this.bale = bale;
this.dirty = dirty;
this.schrab = schrab;
+ this.sol = sol;
this.euph = euph;
this.prevRotationYaw = this.rotationYaw = 90;
this.prevRotationPitch = this.rotationPitch = 90;
@@ -79,7 +81,7 @@ public void onUpdate() {
{
if(!this.world.isRemote)
{
- NukeCustom.explodeCustom(world, posX, posY, posZ, tnt, nuke, hydro, amat, dirty, schrab, euph);
+ NukeCustom.explodeCustom(world, posX, posY, posZ, tnt, nuke, hydro, bale, dirty, schrab, sol, euph);
this.setDead();
}
}
diff --git a/src/main/java/com/hbm/handler/ArmorUtil.java b/src/main/java/com/hbm/handler/ArmorUtil.java
index 0a125a1a48..73801e62dd 100644
--- a/src/main/java/com/hbm/handler/ArmorUtil.java
+++ b/src/main/java/com/hbm/handler/ArmorUtil.java
@@ -177,14 +177,14 @@ public static boolean checkForHaz2(EntityPlayer player) {
if(checkArmor(player, ModItems.hazmat_paa_helmet, ModItems.hazmat_paa_plate, ModItems.hazmat_paa_legs, ModItems.hazmat_paa_boots) ||
checkArmor(player, ModItems.paa_helmet, ModItems.paa_plate, ModItems.paa_legs, ModItems.paa_boots) ||
- checkArmor(player, ModItems.liquidator_helmet, ModItems.liquidator_plate, ModItems.liquidator_legs, ModItems.liquidator_boots) ||
- checkArmor(player, ModItems.euphemium_helmet, ModItems.euphemium_plate, ModItems.euphemium_legs, ModItems.euphemium_boots) ||
- checkArmor(player, ModItems.hev_helmet, ModItems.hev_plate, ModItems.hev_legs, ModItems.hev_boots) ||
- checkArmor(player, ModItems.ajr_helmet, ModItems.ajr_plate, ModItems.ajr_legs, ModItems.ajr_boots) ||
- checkArmor(player, ModItems.ajro_helmet, ModItems.ajro_plate, ModItems.ajro_legs, ModItems.ajro_boots) ||
- checkArmor(player, ModItems.rpa_helmet, ModItems.rpa_plate, ModItems.rpa_legs, ModItems.rpa_boots) ||
- checkArmor(player, ModItems.fau_helmet, ModItems.fau_plate, ModItems.fau_legs, ModItems.fau_boots) ||
- checkArmor(player, ModItems.dns_helmet, ModItems.dns_plate, ModItems.dns_legs, ModItems.dns_boots)) {
+ checkArmor(player, ModItems.liquidator_helmet, ModItems.liquidator_plate, ModItems.liquidator_legs, ModItems.liquidator_boots) ||
+ checkArmor(player, ModItems.euphemium_helmet, ModItems.euphemium_plate, ModItems.euphemium_legs, ModItems.euphemium_boots) ||
+ checkArmor(player, ModItems.hev_helmet, ModItems.hev_plate, ModItems.hev_legs, ModItems.hev_boots) ||
+ checkArmor(player, ModItems.ajr_helmet, ModItems.ajr_plate, ModItems.ajr_legs, ModItems.ajr_boots) ||
+ checkArmor(player, ModItems.ajro_helmet, ModItems.ajro_plate, ModItems.ajro_legs, ModItems.ajro_boots) ||
+ checkArmor(player, ModItems.rpa_helmet, ModItems.rpa_plate, ModItems.rpa_legs, ModItems.rpa_boots) ||
+ checkArmor(player, ModItems.fau_helmet, ModItems.fau_plate, ModItems.fau_legs, ModItems.fau_boots) ||
+ checkArmor(player, ModItems.dns_helmet, ModItems.dns_plate, ModItems.dns_legs, ModItems.dns_boots)) {
return true;
}
diff --git a/src/main/java/com/hbm/handler/GuiHandler.java b/src/main/java/com/hbm/handler/GuiHandler.java
index f97b1652ca..4df34bc5ee 100644
--- a/src/main/java/com/hbm/handler/GuiHandler.java
+++ b/src/main/java/com/hbm/handler/GuiHandler.java
@@ -411,12 +411,12 @@ public Object getServerGuiElement(int ID, EntityPlayer player, World world, int
return null;
case ModBlocks.guiID_factory_titanium:
if(entity instanceof TileEntityCoreTitanium) {
- return new ContainerCoreTitanium(player, (TileEntityCoreTitanium) entity);
+ return new ContainerCoreTitanium(player.inventory, (TileEntityCoreTitanium) entity);
}
return null;
case ModBlocks.guiID_factory_advanced:
if(entity instanceof TileEntityCoreAdvanced) {
- return new ContainerCoreAdvanced(player, (TileEntityCoreAdvanced) entity);
+ return new ContainerCoreAdvanced(player.inventory, (TileEntityCoreAdvanced) entity);
}
return null;
case ModBlocks.guiID_reactor_multiblock:
@@ -1030,12 +1030,12 @@ public Object getClientGuiElement(int ID, EntityPlayer player, World world, int
return null;
case ModBlocks.guiID_factory_titanium:
if(entity instanceof TileEntityCoreTitanium) {
- return new GUICoreTitanium(player, (TileEntityCoreTitanium) entity);
+ return new GUICoreTitanium(player.inventory, (TileEntityCoreTitanium) entity);
}
return null;
case ModBlocks.guiID_factory_advanced:
if(entity instanceof TileEntityCoreAdvanced) {
- return new GUICoreAdvanced(player, (TileEntityCoreAdvanced) entity);
+ return new GUICoreAdvanced(player.inventory, (TileEntityCoreAdvanced) entity);
}
return null;
case ModBlocks.guiID_reactor_multiblock:
diff --git a/src/main/java/com/hbm/handler/RadiationSystemNT.java b/src/main/java/com/hbm/handler/RadiationSystemNT.java
index fe6beceaa1..116fbe8f04 100644
--- a/src/main/java/com/hbm/handler/RadiationSystemNT.java
+++ b/src/main/java/com/hbm/handler/RadiationSystemNT.java
@@ -1113,18 +1113,33 @@ public SubChunkRadiationStorage(ChunkRadiationStorage parent, int yLevel, RadPoc
* @return the pocket at the specified position, or the first pocket if it doesn't exist
*/
public RadPocket getPocket(BlockPos pos){
- if(pocketsByBlock == null){
- //If pocketsByBlock is null, there's only one pocket anyway
- return pockets[0];
- } else {
- int x = pos.getX()&15;
- int y = pos.getY()&15;
- int z = pos.getZ()&15;
- RadPocket p = pocketsByBlock[x*16*16+y*16+z];
- //If for whatever reason there isn't a pocket there, return the first pocket as a fallback
- return p == null ? pockets[0] : p;
- }
- }
+ if(pocketsByBlock == null){
+ //If pocketsByBlock is null, there's only one pocket anyway
+ return pockets[0];
+ } else {
+ int x = pos.getX()&15;
+ int y = pos.getY()&15;
+ int z = pos.getZ()&15;
+ RadPocket p = pocketsByBlock[x*16*16+y*16+z];
+ if (p == null) {
+ if (pockets != null && pockets.length > 0 && pockets[0] != null) {
+ // If for whatever reason there isn't a pocket there, return the first pocket as a fallback if present
+ return pockets[0];
+ } else {
+ // If first pocket isn't present either, create one and warn
+ p = new RadPocket(this, 0);
+ p.radiation = 0;
+ if (pockets == null || pockets.length == 0) {
+ pockets = new RadPocket[1];
+ }
+ pockets[0] = p;
+ return p;
+ }
+ } else {
+ return p;
+ }
+ }
+ }
/**
* Attempts to distribute radiation from another sub chunk into this one's pockets.
diff --git a/src/main/java/com/hbm/handler/ToolAbility.java b/src/main/java/com/hbm/handler/ToolAbility.java
index 30cf6a0cd3..b571fb935b 100644
--- a/src/main/java/com/hbm/handler/ToolAbility.java
+++ b/src/main/java/com/hbm/handler/ToolAbility.java
@@ -12,6 +12,9 @@
import com.hbm.inventory.CentrifugeRecipes;
import com.hbm.inventory.CrystallizerRecipes;
import com.hbm.inventory.ShredderRecipes;
+import com.hbm.blocks.generic.BlockStorageCrate;
+import com.hbm.blocks.machine.MachineBattery;
+import com.hbm.blocks.machine.MachineFENSU;
import com.hbm.items.ModItems;
import com.hbm.items.tool.IItemAbility;
import com.hbm.render.amlfrom1710.Vec3;
@@ -198,6 +201,7 @@ public static class SmelterAbility extends ToolAbility {
@Override
public void onDig(World world, int x, int y, int z, EntityPlayer player, IBlockState block, IItemAbility tool, EnumHand hand) {
+ if(isNBTThing(block.getBlock())) return;
//a band-aid on a gaping wound
if(block.getBlock() == Blocks.LIT_REDSTONE_ORE)
block = Blocks.REDSTONE_ORE.getDefaultState();
@@ -205,7 +209,7 @@ public void onDig(World world, int x, int y, int z, EntityPlayer player, IBlockS
ItemStack stack = new ItemStack(block.getBlock(), 1, block.getBlock().getMetaFromState(block));
ItemStack result = FurnaceRecipes.instance().getSmeltingResult(stack);
- if(result != null) {
+ if(result != null && !result.isEmpty()) {
world.setBlockToAir(new BlockPos(x, y, z));
world.spawnEntity(new EntityItem(world, x + 0.5, y + 0.5, z + 0.5, result.copy()));
}
@@ -325,6 +329,8 @@ public void onDig(World world, int x, int y, int z, EntityPlayer player, IBlockS
if(EnchantmentHelper.getEnchantmentLevel(Enchantments.SILK_TOUCH, player.getHeldItem(hand)) > 0 || player.getHeldItem(hand).isEmpty())
return;
+ if(isNBTThing(block.getBlock())) return;
+
//add enchantment
ItemStack stack = player.getHeldItem(hand);
@@ -372,6 +378,8 @@ public void onDig(World world, int x, int y, int z, EntityPlayer player, IBlockS
if(EnchantmentHelper.getEnchantmentLevel(Enchantments.FORTUNE, player.getHeldItem(hand)) > 0 || player.getHeldItem(hand) == null)
return;
+ if(isNBTThing(block.getBlock())) return;
+
//add enchantment
ItemStack stack = player.getHeldItem(hand);
@@ -527,4 +535,8 @@ public String getFullName() {
return I18n.format(getName()) + getExtension();
}
}
+
+ public boolean isNBTThing(Block b){
+ return b instanceof BlockStorageCrate || b instanceof MachineBattery || b instanceof MachineFENSU;
+ }
}
\ No newline at end of file
diff --git a/src/main/java/com/hbm/handler/WeightedRandomChestContentFrom1710.java b/src/main/java/com/hbm/handler/WeightedRandomChestContentFrom1710.java
index b7884c266e..b17b65a1c4 100644
--- a/src/main/java/com/hbm/handler/WeightedRandomChestContentFrom1710.java
+++ b/src/main/java/com/hbm/handler/WeightedRandomChestContentFrom1710.java
@@ -20,20 +20,20 @@ public class WeightedRandomChestContentFrom1710 extends WeightedRandom.Item
/** The maximum chance of item generating. */
public int theMaximumChanceToGenerateItem;
- public WeightedRandomChestContentFrom1710(Item p_i45311_1_, int p_i45311_2_, int p_i45311_3_, int p_i45311_4_, int p_i45311_5_)
+ public WeightedRandomChestContentFrom1710(Item item, int meta, int minChance, int maxChance, int weight)
{
- super(p_i45311_5_);
- this.theItemId = new ItemStack(p_i45311_1_, 1, p_i45311_2_);
- this.theMinimumChanceToGenerateItem = p_i45311_3_;
- this.theMaximumChanceToGenerateItem = p_i45311_4_;
+ super(weight);
+ this.theItemId = new ItemStack(item, 1, meta);
+ this.theMinimumChanceToGenerateItem = minChance;
+ this.theMaximumChanceToGenerateItem = maxChance;
}
- public WeightedRandomChestContentFrom1710(ItemStack p_i1558_1_, int p_i1558_2_, int p_i1558_3_, int p_i1558_4_)
+ public WeightedRandomChestContentFrom1710(ItemStack stack, int minChance, int maxChance, int weight)
{
- super(p_i1558_4_);
- this.theItemId = p_i1558_1_;
- this.theMinimumChanceToGenerateItem = p_i1558_2_;
- this.theMaximumChanceToGenerateItem = p_i1558_3_;
+ super(weight);
+ this.theItemId = stack;
+ this.theMinimumChanceToGenerateItem = minChance;
+ this.theMaximumChanceToGenerateItem = maxChance;
}
public static void generateChestContents(Random p_76293_0_, WeightedRandomChestContentFrom1710[] p_76293_1_, ICapabilityProvider p_76293_2_, int p_76293_3_){
diff --git a/src/main/java/com/hbm/handler/crt/Assembler.java b/src/main/java/com/hbm/handler/crt/Assembler.java
index 8654b918f8..e2f34bde40 100644
--- a/src/main/java/com/hbm/handler/crt/Assembler.java
+++ b/src/main/java/com/hbm/handler/crt/Assembler.java
@@ -68,6 +68,12 @@ public String describe(){
@ZenMethod
public static void addRecipe(IItemStack output, IItemStack[] inputs, int duration){
+ CraftTweakerAPI.apply(new ActionAddRecipe(output, inputs, duration));
+ }
+
+ @ZenMethod
+ public static void replaceRecipe(IItemStack output, IItemStack[] inputs, int duration){
+ NTMCraftTweaker.postInitActions.add(new ActionRemoveRecipe(output));
NTMCraftTweaker.postInitActions.add(new ActionAddRecipe(output, inputs, duration));
}
diff --git a/src/main/java/com/hbm/handler/guncfg/Gun556mmFactory.java b/src/main/java/com/hbm/handler/guncfg/Gun556mmFactory.java
index cbf1856e4e..969e2e329a 100644
--- a/src/main/java/com/hbm/handler/guncfg/Gun556mmFactory.java
+++ b/src/main/java/com/hbm/handler/guncfg/Gun556mmFactory.java
@@ -52,8 +52,8 @@ public static GunConfiguration getEuphieConfig() {
config.comment.add("Why is this gun so sticky?");
config.config = new ArrayList();
- config.config.add(BulletConfigSyncingUtil.R556_NORMAL);
config.config.add(BulletConfigSyncingUtil.R556_GOLD);
+ config.config.add(BulletConfigSyncingUtil.R556_NORMAL);
config.config.add(BulletConfigSyncingUtil.R556_TRACER);
config.config.add(BulletConfigSyncingUtil.R556_PHOSPHORUS);
config.config.add(BulletConfigSyncingUtil.R556_AP);
@@ -77,7 +77,7 @@ public static GunConfiguration getSPIWConfig() {
config.hasSights = true;
config.reloadDuration = 25;
config.firingDuration = 0;
- config.ammoCap = 20;
+ config.ammoCap = 30;
config.reloadType = GunConfiguration.RELOAD_FULL;
config.allowsInfinity = true;
config.crosshair = Crosshair.L_BOX;
diff --git a/src/main/java/com/hbm/handler/guncfg/GunEnergyFactory.java b/src/main/java/com/hbm/handler/guncfg/GunEnergyFactory.java
index 8680a97435..bb2469c5b9 100644
--- a/src/main/java/com/hbm/handler/guncfg/GunEnergyFactory.java
+++ b/src/main/java/com/hbm/handler/guncfg/GunEnergyFactory.java
@@ -161,7 +161,7 @@ public static GunConfiguration getVortexConfig() {
config.hasSights = false;
config.reloadDuration = 20;
config.firingDuration = 0;
- config.ammoCap = 40;
+ config.ammoCap = 10;
config.reloadType = GunConfiguration.RELOAD_FULL;
config.allowsInfinity = true;
config.crosshair = Crosshair.NONE;
@@ -182,16 +182,7 @@ public static GunConfiguration getVortexConfig() {
));
config.config = new ArrayList();
- config.config.add(BulletConfigSyncingUtil.R556_NORMAL);
- config.config.add(BulletConfigSyncingUtil.R556_GOLD);
- config.config.add(BulletConfigSyncingUtil.R556_TRACER);
- config.config.add(BulletConfigSyncingUtil.R556_PHOSPHORUS);
- config.config.add(BulletConfigSyncingUtil.R556_AP);
- config.config.add(BulletConfigSyncingUtil.R556_DU);
config.config.add(BulletConfigSyncingUtil.R556_STAR);
- config.config.add(BulletConfigSyncingUtil.CHL_R556);
- config.config.add(BulletConfigSyncingUtil.R556_SLEEK);
- config.config.add(BulletConfigSyncingUtil.R556_K);
return config;
diff --git a/src/main/java/com/hbm/handler/jei/JEIConfig.java b/src/main/java/com/hbm/handler/jei/JEIConfig.java
index b72550c301..229fe9e01d 100644
--- a/src/main/java/com/hbm/handler/jei/JEIConfig.java
+++ b/src/main/java/com/hbm/handler/jei/JEIConfig.java
@@ -103,6 +103,7 @@ public void register(IModRegistry registry) {
registry.addRecipeCatalyst(new ItemStack(ModBlocks.machine_cyclotron), CYCLOTRON);
registry.addRecipeCatalyst(new ItemStack(ModBlocks.machine_schrabidium_transmutator), TRANSMUTATION);
registry.addRecipeCatalyst(new ItemStack(ModBlocks.machine_press), PRESS);
+ registry.addRecipeCatalyst(new ItemStack(ModBlocks.machine_epress), PRESS);
registry.addRecipeCatalyst(new ItemStack(ModBlocks.machine_difurnace_off), ALLOY);
registry.addRecipeCatalyst(new ItemStack(ModBlocks.machine_difurnace_rtg_off), ALLOY);
registry.addRecipeCatalyst(new ItemStack(ModBlocks.machine_boiler_off), BOILER);
diff --git a/src/main/java/com/hbm/handler/jei/JeiRecipes.java b/src/main/java/com/hbm/handler/jei/JeiRecipes.java
index 29734b1eda..9f7f5f994b 100644
--- a/src/main/java/com/hbm/handler/jei/JeiRecipes.java
+++ b/src/main/java/com/hbm/handler/jei/JeiRecipes.java
@@ -29,6 +29,7 @@
import com.hbm.inventory.FusionRecipes;
import com.hbm.inventory.DiFurnaceRecipes;
import com.hbm.inventory.HeatRecipes;
+import com.hbm.inventory.PressRecipes;
import com.hbm.inventory.MachineRecipes;
import com.hbm.inventory.MachineRecipes.GasCentOutput;
import com.hbm.inventory.MagicRecipes;
@@ -172,10 +173,10 @@ public void getIngredients(IIngredients ingredients) {
public static class PressRecipe implements IRecipeWrapper {
private final List stamps;
- private final ItemStack input;
+ private final List input;
private final ItemStack output;
- public PressRecipe(List stamps, ItemStack input, ItemStack output) {
+ public PressRecipe(List stamps, List input, ItemStack output) {
this.stamps = stamps;
this.input = input;
this.output = output;
@@ -187,7 +188,7 @@ public List getStamps() {
@Override
public void getIngredients(IIngredients ingredients) {
- ingredients.setInput(VanillaTypes.ITEM, input);
+ ingredients.setInputs(VanillaTypes.ITEM, input);
ingredients.setOutput(VanillaTypes.ITEM, output);
}
@@ -747,107 +748,17 @@ public static List getCyclotronRecipes() {
public static List getPressRecipes() {
if(pressRecipes != null)
return pressRecipes;
- pressRecipes = new ArrayList();
- Map