diff --git a/src/main/java/com/sosnitzka/ztic_addon/Alloys.java b/src/main/java/com/sosnitzka/ztic_addon/Alloys.java new file mode 100644 index 0000000..9a2daf3 --- /dev/null +++ b/src/main/java/com/sosnitzka/ztic_addon/Alloys.java @@ -0,0 +1,7 @@ +package com.sosnitzka.ztic_addon; + + +public class Alloys { + + +} diff --git a/src/main/java/com/sosnitzka/ztic_addon/Blocks.java b/src/main/java/com/sosnitzka/ztic_addon/Blocks.java new file mode 100644 index 0000000..8c6fd94 --- /dev/null +++ b/src/main/java/com/sosnitzka/ztic_addon/Blocks.java @@ -0,0 +1,61 @@ +package com.sosnitzka.ztic_addon; + +import com.sosnitzka.ztic_addon.blocks.BlockLigniteOre; +import com.sosnitzka.ztic_addon.blocks.BlockTiberiumOre; +import com.sosnitzka.ztic_addon.generic.BasicBlockGround; +import com.sosnitzka.ztic_addon.generic.BasicBlockOre; +import com.sosnitzka.ztic_addon.generic.BasicBlockOreGlow; +import com.sosnitzka.ztic_addon.util.Utils; +import net.minecraft.block.Block; +import net.minecraft.block.material.Material; +import net.minecraftforge.oredict.OreDictionary; + +import java.lang.reflect.Field; + +public class Blocks { + public static Block basalt = new BasicBlockOre("basalt", Material.ROCK, 45.0f, 35.0f, 3, null); + public static Block rottenGround = new BasicBlockGround("rotten_ground", Material.GROUND, 2.0f, 2.0f, 0); + public static Block ligniteOre = new BlockLigniteOre(); + + public static Block aardiumOre = new BasicBlockOre("aardium_ore", Material.ROCK, 55.0f, 400.0f, 3, "oreAardium"); + public static Block adamantiteOre = new BasicBlockOre("adamantite_ore", Material.ROCK, 80.0f, 1000.0f, 4, "oreAdamantite"); + public static Block arcaniteOre = new BasicBlockOre("arcanite_ore", Material.ROCK, 23.0f, 25.0f, 2, "oreArcanite"); + public static Block axiidianOre = new BasicBlockOre("axiidian_ore", Material.ROCK, 13.0f, 13.0f, 3, "oreAxiidian"); + public static Block bismuthOre = new BasicBlockOre("bismuth_ore", Material.ROCK, 8.0f, 8.0f, 1, "oreBismuth"); + public static Block eterniteOre = new BasicBlockOre("eternite_ore", Material.ROCK, 24.0f, 25.0f, 3, "oreEternite"); + public static Block ignititeOre = new BasicBlockOre("ignitite_ore", Material.ROCK, 23.0f, 25.0f, 3, "oreIgnitite"); + public static Block karmesineOre = new BasicBlockOre("karmesine_ore", Material.ROCK, 13.0f, 15.0f, 1, "oreKarmesine"); + public static Block meteoriteOre = new BasicBlockOre("meteorite_ore", Material.ROCK, 60.0f, 500.0f, 4, "oreMeteorite"); + public static Block mindoriteOre = new BasicBlockOre("mindorite_ore", Material.ROCK, 12.0f, 12.0f, 2, "oreMindorite"); + public static Block mythrilOre = new BasicBlockOre("mythril_ore", Material.ROCK, 25.0f, 25.0f, 4, "oreMythril"); + public static Block palladiumOre = new BasicBlockOre("palladium_ore", Material.ROCK, 25.0f, 25.0f, 3, "orePalladium"); + public static Block prometheumOre = new BasicBlockOreGlow("prometheum_ore", Material.ROCK, 35.0f, 35.0f, 4, 0.25f, null); + public static Block slagironOre = new BasicBlockOre("slagiron_ore", Material.ROCK, 3.0f, 5.0f, 1, "orePrometheum"); + public static Block slaggoldOre = new BasicBlockOre("slaggold_ore", Material.ROCK, 3.0f, 5.0f, 1, null); + public static Block tiberiumOre = new BlockTiberiumOre(); + public static Block vibraniumOre = new BasicBlockOre("vibranium_ore", Material.ROCK, 70.0f, 800.0f, 4, "oreVibranium"); + public static Block yrdeanOre = new BasicBlockOre("yrdean_ore", Material.ROCK, 13.0f, 15.0f, 3, "oreYrdean"); + + + public static void register() { + Field[] declaredFields = Blocks.class.getDeclaredFields(); + for (Field field : declaredFields) { + if (java.lang.reflect.Modifier.isStatic(field.getModifiers())) { + Class targetType = field.getType(); + try { + Object newInstance = targetType.newInstance(); + BasicBlockOre block = (BasicBlockOre) field.get(newInstance); + Utils.registerBlockWithItem(block); + + if (block.isOreDict()) { + OreDictionary.registerOre(block.oreDictName, block); + } + } catch (InstantiationException e) { + e.printStackTrace(); + } catch (IllegalAccessException e) { + e.printStackTrace(); + } + } + } + } +} diff --git a/src/main/java/com/sosnitzka/ztic_addon/Fluids.java b/src/main/java/com/sosnitzka/ztic_addon/Fluids.java new file mode 100644 index 0000000..806222f --- /dev/null +++ b/src/main/java/com/sosnitzka/ztic_addon/Fluids.java @@ -0,0 +1,65 @@ +package com.sosnitzka.ztic_addon; + + +import com.sosnitzka.ztic_addon.generic.BasicTinkerFluid; +import com.sosnitzka.ztic_addon.util.Utils; +import net.minecraftforge.fluids.Fluid; +import org.apache.commons.lang3.StringUtils; + +import java.lang.reflect.Field; + +public class Fluids { + + public static Fluid arcaniteFluid = new BasicTinkerFluid("arcaniteFluid", 0xFF272354, true, 200, 10, 4000); + public static Fluid aardiumFluid = new BasicTinkerFluid("aardiumFluid", 0xFFC3F93D, true, 200, 10, 4000); + public static Fluid adamantiteFluid = new BasicTinkerFluid("adamantiteFluid", 0xFFc45c82, true, 200, 10, 4000); + public static Fluid axiidianFluid = new BasicTinkerFluid("axiidianFluid", 0xFF77a19a, true, 200, 10, 4000); + public static Fluid bismuthFluid = new BasicTinkerFluid("bismuthFluid", 0xFF555555, true, 200, 10, 4000); + public static Fluid eterniteFluid = new BasicTinkerFluid("eterniteFluid", 0xFFfafa98, true, 200, 10, 4000); + public static Fluid ignititeFluid = new BasicTinkerFluid("ignititeFluid", 0xFFd29453, true, 200, 10, 4000); + public static Fluid karmesineFluid = new BasicTinkerFluid("karmesineFluid", 0xFFc16d6d, true, 200, 10, 4000); + public static Fluid meteoriteFluid = new BasicTinkerFluid("meteoriteFluid", 0xFF6e6a62, true, 200, 10, 4000); + public static Fluid mindoriteFluid = new BasicTinkerFluid("mindoriteFluid", 0xFF6bbbbf, true, 200, 10, 4000); + public static Fluid mythrilFluid = new BasicTinkerFluid("mythrilFluid", 0xFFa8c0ba, true, 200, 10, 4000); + public static Fluid palladiumFluid = new BasicTinkerFluid("palladiumFluid", 0xFFfe5c05, true, 200, 10, 4000); + public static Fluid prometheumFluid = new BasicTinkerFluid("prometheumFluid", 0xFF2b282f, true, 200, 10, 4000); + public static Fluid tiberiumFluid = new BasicTinkerFluid("tiberiumFluid", 0xFF86bd5a, true, 200, 10, 4000); + public static Fluid vibraniumFluid = new BasicTinkerFluid("vibraniumFluid", 0xFFb6bba8, true, 200, 10, 4000); + public static Fluid yrdeanFluid = new BasicTinkerFluid("yrdeanFluid", 0xFF3e3c6f, true, 200, 10, 4000); + + public static Fluid astriumFluid = new BasicTinkerFluid("astriumFluid", 0xFF7a3b74, true, 200, 10, 4000); + public static Fluid instableNitroniteFluid = new BasicTinkerFluid("instableNitroniteFluid", 0xFF659933, true, 200, 10, 4000); + public static Fluid proxideumFluid = new BasicTinkerFluid("proxideumFluid", 0xFF416565, true, 200, 10, 4000); + public static Fluid instablePolyniumFluid = new BasicTinkerFluid("instablePolyniumFluid", 0xFF6c6aa3, true, 200, 10, 4000); + public static Fluid imperomiteFluid = new BasicTinkerFluid("imperomiteFluid", 0xFF339966, true, 200, 10, 4000); + public static Fluid cryptogenFluid = new BasicTinkerFluid("cryptogenFluid", 0xFF9f8a4a, true, 200, 10, 4000); + public static Fluid fractoryteFluid = new BasicTinkerFluid("fractoryteFluid", 0xFFb44a14, true, 200, 10, 4000); + public static Fluid seismodiumFluid = new BasicTinkerFluid("seismodiumFluid", 0xFF46131D, true, 200, 10, 4000); + public static Fluid terramiteFluid = new BasicTinkerFluid("terramiteFluid", 0xFFa6b27a, true, 200, 10, 4000); + public static Fluid instablePrysociteFluid = new BasicTinkerFluid("instablePrysociteFluid", 0xFFbde398, true, 200, 10, 4000); + public static Fluid blazingXylititeFluid = new BasicTinkerFluid("blazingXylititeFluid", 0xFFffc81d, true, 200, 10, 4000); + public static Fluid instableDyoniteFluid = new BasicTinkerFluid("instableDyoniteFluid", 0xFFff6743, true, 200, 10, 4000); + public static Fluid ultraniteFluid = new BasicTinkerFluid("ultraniteFluid", 0xFFfff69b, true, 200, 10, 4000); + public static Fluid radiantPliniumFluid = new BasicTinkerFluid("radiantPliniumFluid", 0xFFc1ff68, true, 200, 10, 4000); + public static Fluid dysprosaniumFluid = new BasicTinkerFluid("dysprosaniumFluid", 0xFFb7a2bd, true, 200, 10, 4000); + public static Fluid refractiveBysmuidFluid = new BasicTinkerFluid("refractiveBysmuidFluid", 0xFF7b97b0, true, 200, 10, 4000); + + + static void register() { + Field[] declaredFields = Fluids.class.getDeclaredFields(); + for (Field field : declaredFields) { + if (java.lang.reflect.Modifier.isStatic(field.getModifiers())) { + Class targetType = field.getType(); + try { + Object newInstance = targetType.newInstance(); + BasicTinkerFluid fluid = (BasicTinkerFluid) newInstance; + Utils.registerTinkerFluid(StringUtils.capitalize(field.getName().replace("Fluid", "")), fluid, fluid.isToolForge()); + } catch (InstantiationException e) { + e.printStackTrace(); + } catch (IllegalAccessException e) { + e.printStackTrace(); + } + } + } + } +} diff --git a/src/main/java/com/sosnitzka/ztic_addon/Items.java b/src/main/java/com/sosnitzka/ztic_addon/Items.java new file mode 100644 index 0000000..0c10bfa --- /dev/null +++ b/src/main/java/com/sosnitzka/ztic_addon/Items.java @@ -0,0 +1,74 @@ +package com.sosnitzka.ztic_addon; + + +import com.sosnitzka.ztic_addon.generic.BasicItem; +import com.sosnitzka.ztic_addon.items.ItemIronNugget; +import com.sosnitzka.ztic_addon.items.ItemLignite; +import com.sosnitzka.ztic_addon.items.ItemSlaggoldIngot; +import com.sosnitzka.ztic_addon.items.ItemSlagironIngot; +import net.minecraft.item.Item; +import net.minecraftforge.fml.common.registry.GameRegistry; + +import java.lang.reflect.Field; + +public class Items { + public static ItemSlagironIngot slagironIngot = new ItemSlagironIngot(); + public static ItemLignite lignite = new ItemLignite(); + public static ItemIronNugget iron_nugget = new ItemIronNugget(); + public static ItemSlaggoldIngot slaggoldIngot = new ItemSlaggoldIngot(); + public static Item fuel_brick = new BasicItem("fuel_brick"); + + public static Item aardiumIngot = new BasicItem("aardium_ingot", "ingotAardium"); + public static Item adamantiteIngot = new BasicItem("adamantite_ingot", "ingotAdamantite"); + public static Item arcaniteIngot = new BasicItem("arcanite_ingot", "ingotArcanite"); + public static Item axiidianIngot = new BasicItem("axiidian_ingot", "ingotAxiidian"); + public static Item bismuthIngot = new BasicItem("bismuth_ingot", "ingotBismuth"); + public static Item eterniteIngot = new BasicItem("eternite_ingot", "ingotEternite"); + public static Item ignititeIngot = new BasicItem("ignitite_ingot", "ingotIgnitite"); + public static Item karmesineIngot = new BasicItem("karmesine_ingot", "ingotKarmesine"); + public static Item meteoriteIngot = new BasicItem("meteorite_ingot", "ingotMeteorite"); + public static Item mindoriteIngot = new BasicItem("mindorite_ingot", "ingotMindorite"); + public static Item mythrilIngot = new BasicItem("mythril_ingot", "ingotMythril"); + public static Item palladiumIngot = new BasicItem("palladium_ingot", "ingotPalladium"); + public static Item prometheumIngot = new BasicItem("prometheum_ingot", "ingotPrometheum"); + public static Item tiberiumIngot = new BasicItem("tiberium_ingot", "ingotTiberium"); + public static Item vibraniumIngot = new BasicItem("vibranium_ingot", "ingotVibranium"); + public static Item yrdeanIngot = new BasicItem("yrdean_ingot", "ingotYrdean"); + + public static Item astriumIngot = new BasicItem("astrium_ingot", "ingotAstrium"); + public static Item instableNitroniteIngot = new BasicItem("instable_nitronite_ingot"); + public static Item proxideumIngot = new BasicItem("proxideum_ingot"); + public static Item instablePolyniumIngot = new BasicItem("instable_polyniumingot"); + public static Item imperomiteIngot = new BasicItem("imperomite_ingot"); + public static Item cryptogenIngot = new BasicItem("cryptogen_ingot"); + public static Item fractoryteIngot = new BasicItem("fractoryte_ingot"); + public static Item seismodiumIngot = new BasicItem("seismodium_ingot"); + public static Item terramiteIngot = new BasicItem("terramite_ingot"); + public static Item instablePrysociteIngot = new BasicItem("instable_prysocite_ingot"); + public static Item blazingXylititeIngot = new BasicItem("blazing_xylitite_ingot"); + public static Item instableDyoniteIngot = new BasicItem("instable_dyonite_ingot"); + public static Item ultraniteIngot = new BasicItem("ultranite_ingot"); + public static Item radiantPliniumIngot = new BasicItem("radiant_plinium_ingot"); + public static Item dysprosaniumIngot = new BasicItem("dysprosanium_ingot"); + public static Item refractiveBysumIngot = new BasicItem("refractive_bysum_ingot"); + + public static Item tiberiumShardInstable = new BasicItem("tiberium_shard_instable"); + public static Item tiberiumShardStable = new BasicItem("tiberium_shard_stable"); + + static void register() { + Field[] declaredFields = Items.class.getDeclaredFields(); + for (Field field : declaredFields) { + if (java.lang.reflect.Modifier.isStatic(field.getModifiers())) { + Class targetType = field.getType(); + try { + Object newInstance = targetType.newInstance(); + GameRegistry.register(((Item) field.get(newInstance))); + } catch (InstantiationException e) { + e.printStackTrace(); + } catch (IllegalAccessException e) { + e.printStackTrace(); + } + } + } + } +} diff --git a/src/main/java/com/sosnitzka/ztic_addon/Materials.java b/src/main/java/com/sosnitzka/ztic_addon/Materials.java new file mode 100644 index 0000000..293b0f2 --- /dev/null +++ b/src/main/java/com/sosnitzka/ztic_addon/Materials.java @@ -0,0 +1,41 @@ +package com.sosnitzka.ztic_addon; + + +import net.minecraft.util.text.TextFormatting; +import slimeknights.tconstruct.library.materials.Material; + +public class Materials { + public static Material arcanite = new Material("arcanite", TextFormatting.LIGHT_PURPLE); + public static Material tiberium = new Material("tiberium", TextFormatting.LIGHT_PURPLE); + public static Material prometheum = new Material("prometheum", TextFormatting.LIGHT_PURPLE); + public static Material yrdean = new Material("yrdean", TextFormatting.LIGHT_PURPLE); + public static Material axiidian = new Material("axiidian", TextFormatting.DARK_GREEN); + public static Material bismuth = new Material("bismuth", TextFormatting.DARK_GREEN); + public static Material karmesine = new Material("karmesine", TextFormatting.DARK_GREEN); + public static Material mindorite = new Material("mindorite", TextFormatting.DARK_GREEN); + public static Material aardium = new Material("aardium", TextFormatting.GRAY); + public static Material meteorite = new Material("meteorite", TextFormatting.GRAY); + public static Material adamantite = new Material("adamantite", TextFormatting.GRAY); + public static Material vibranium = new Material("vibranium", TextFormatting.GRAY); + public static Material ignitite = new Material("ignitite", TextFormatting.AQUA); + public static Material palladium = new Material("palladium", TextFormatting.AQUA); + public static Material eternite = new Material("eternite", TextFormatting.AQUA); + public static Material mythril = new Material("mythril", TextFormatting.AQUA); + + public static Material astrium = new Material("astrium", TextFormatting.LIGHT_PURPLE); + public static Material instableNitronite = new Material("instableNitronite", TextFormatting.LIGHT_PURPLE); + public static Material proxideum = new Material("proxideum", TextFormatting.LIGHT_PURPLE); + public static Material instablePolynium = new Material("instablePolynium", TextFormatting.LIGHT_PURPLE); + public static Material imperomite = new Material("imperomite", TextFormatting.DARK_GREEN); + public static Material cryptogen = new Material("cryptogen", TextFormatting.DARK_GREEN); + public static Material fractoryte = new Material("fractoryte", TextFormatting.DARK_GREEN); + public static Material seismodium = new Material("seismodium", TextFormatting.DARK_GREEN); + public static Material terramite = new Material("terramite", TextFormatting.GRAY); + public static Material instablePrysocite = new Material("instablePrysocite", TextFormatting.GRAY); + public static Material blazingXylitite = new Material("blazingXylitite", TextFormatting.GRAY); + public static Material instableDyonite = new Material("instableDyonite", TextFormatting.GRAY); + public static Material ultranite = new Material("ultranite", TextFormatting.AQUA); + public static Material radiantPlinium = new Material("radiantPlinium", TextFormatting.AQUA); + public static Material dysprosanium = new Material("dysprosanium", TextFormatting.AQUA); + public static Material refractiveBysmuid = new Material("refractiveBysmuidFluid", TextFormatting.AQUA); +} diff --git a/src/main/java/com/sosnitzka/ztic_addon/ZTiC.java b/src/main/java/com/sosnitzka/ztic_addon/ZTiC.java new file mode 100644 index 0000000..e8401d1 --- /dev/null +++ b/src/main/java/com/sosnitzka/ztic_addon/ZTiC.java @@ -0,0 +1,124 @@ +package com.sosnitzka.ztic_addon; + +import com.google.common.collect.Lists; +import com.sosnitzka.ztic_addon.proxy.ClientProxy; +import com.sosnitzka.ztic_addon.recipes.Crafting; +import com.sosnitzka.ztic_addon.recipes.Smelting; +import com.sosnitzka.ztic_addon.util.FuelHandler; +import com.sosnitzka.ztic_addon.world.ZWorldGen; +import net.minecraftforge.fluids.Fluid; +import net.minecraftforge.fml.common.Mod; +import net.minecraftforge.fml.common.Mod.EventHandler; +import net.minecraftforge.fml.common.SidedProxy; +import net.minecraftforge.fml.common.event.FMLInitializationEvent; +import net.minecraftforge.fml.common.event.FMLPostInitializationEvent; +import net.minecraftforge.fml.common.event.FMLPreInitializationEvent; +import net.minecraftforge.fml.common.registry.GameRegistry; +import slimeknights.tconstruct.library.MaterialIntegration; +import slimeknights.tconstruct.library.materials.ExtraMaterialStats; +import slimeknights.tconstruct.library.materials.HandleMaterialStats; +import slimeknights.tconstruct.library.materials.HeadMaterialStats; + +import java.util.List; + +import static com.sosnitzka.ztic_addon.Fluids.*; +import static com.sosnitzka.ztic_addon.Materials.*; +import static com.sosnitzka.ztic_addon.util.Utils.registerTinkerAlloys; + +@Mod(modid = ZTiC.MODID, version = ZTiC.VERSION) +public class ZTiC { + + static final String MODID = "ztic_addon"; + static final String VERSION = "@VERSION@"; + + @SidedProxy(clientSide = "com.sosnitzka.ztic_addon.proxy.ClientProxy", serverSide = "com.sosnitzka.ztic_addon.proxy.ServerProxy") + private static ClientProxy proxy; + private List integrateList = Lists.newArrayList(); + + @EventHandler + public void preInit(FMLPreInitializationEvent e) { + Items.register(); + Blocks.register(); + Fluids.register(); + + // TConstruct Alloys + registerTinkerAlloys(astriumFluid, 1, arcaniteFluid, 3, karmesineFluid, 2); + registerTinkerAlloys(instableNitroniteFluid, 1, tiberiumFluid, 5, vibraniumFluid, 3); + registerTinkerAlloys(proxideumFluid, 1, prometheumFluid, 3, axiidianFluid, 2); + registerTinkerAlloys(instablePolyniumFluid, 1, yrdeanFluid, 3, meteoriteFluid, 2); + registerTinkerAlloys(imperomiteFluid, 2, aardiumFluid, 3, prometheumFluid, 3); + registerTinkerAlloys(cryptogenFluid, 1, meteoriteFluid, 3, mythrilFluid, 2); + registerTinkerAlloys(fractoryteFluid, 1, adamantiteFluid, 4, arcaniteFluid, 2); + registerTinkerAlloys(seismodiumFluid, 1, vibraniumFluid, 4, palladiumFluid, 4); + registerTinkerAlloys(terramiteFluid, 2, axiidianFluid, 4, eterniteFluid, 2); + registerTinkerAlloys(instablePrysociteFluid, 1, bismuthFluid, 3, yrdeanFluid, 2); + registerTinkerAlloys(blazingXylititeFluid, 1, karmesineFluid, 3, ignititeFluid, 2); + registerTinkerAlloys(instableDyoniteFluid, 1, mindoriteFluid, 4, tiberiumFluid, 2); + registerTinkerAlloys(ultraniteFluid, 1, ignititeFluid, 5, adamantiteFluid, 3); + registerTinkerAlloys(radiantPliniumFluid, 1, palladiumFluid, 3, mindoriteFluid, 3); + registerTinkerAlloys(dysprosaniumFluid, 1, eterniteFluid, 3, aardiumFluid, 3); + registerTinkerAlloys(refractiveBysmuidFluid, 1, mythrilFluid, 4, bismuthFluid, 2); + + + // Material from ores + registerTinkerMaterial("Arcanite", arcanite, arcaniteFluid, 1, 5, 6, 7, 0.8f, 0, 100, false, true); + registerTinkerMaterial("Tiberium", tiberium, tiberiumFluid, 1, 5, 6, 6, 0.8f, 0, 100, false, true); + registerTinkerMaterial("Prometheum", prometheum, prometheumFluid, 1, 5, 6, 5, 0.8f, 0, 100, false, true); + registerTinkerMaterial("Yrdean", yrdean, yrdeanFluid, 1, 5, 6, 4, 0.8f, 0, 100, false, true); + registerTinkerMaterial("Axiidian", axiidian, axiidianFluid, 1, 5, 6, 3, 0.8f, 0, 100, false, true); + registerTinkerMaterial("Bismuth", bismuth, bismuthFluid, 1, 5, 6, 3, 0.8f, 0, 100, false, true); + registerTinkerMaterial("Karmesine", karmesine, karmesineFluid, 1, 5, 6, 3, 0.8f, 0, 100, false, true); + registerTinkerMaterial("Mindorite", mindorite, mindoriteFluid, 1, 5, 6, 3, 0.8f, 0, 100, false, true); + registerTinkerMaterial("Aardium", aardium, aardiumFluid, 1, 5, 6, 3, 0.8f, 0, 100, true, true); + registerTinkerMaterial("Meteorite", meteorite, meteoriteFluid, 1, 5, 6, 3, 0.8f, 0, 100, false, true); + registerTinkerMaterial("Adamantite", adamantite, adamantiteFluid, 1, 5, 6, 3, 0.8f, 0, 100, false, true); + registerTinkerMaterial("Vibranium", vibranium, vibraniumFluid, 1, 5, 6, 3, 0.8f, 0, 100, false, true); + registerTinkerMaterial("Ignitite", ignitite, ignititeFluid, 1, 5, 6, 3, 0.8f, 0, 100, false, true); + registerTinkerMaterial("Palladium", palladium, palladiumFluid, 1, 5, 6, 3, 0.8f, 0, 100, false, true); + registerTinkerMaterial("Eternite", eternite, eterniteFluid, 1, 5, 6, 3, 0.8f, 0, 100, false, true); + registerTinkerMaterial("Mythril", mythril, mythrilFluid, 1, 5, 6, 3, 0.8f, 0, 100, false, true); + + // Material from alloys + registerTinkerMaterial("Astrium", astrium, astriumFluid, 1, 5, 6, 7, 0.8f, 0, 100, false, true); + registerTinkerMaterial("InstableNitronite", instableNitronite, instableNitroniteFluid, 1, 5, 6, 6, 0.8f, 0, 100, false, true); + registerTinkerMaterial("Proxideum", proxideum, proxideumFluid, 1, 5, 6, 5, 0.8f, 0, 100, false, true); + registerTinkerMaterial("InstablePolynium", instablePolynium, instablePolyniumFluid, 1, 5, 6, 4, 0.8f, 0, 100, false, true); + registerTinkerMaterial("Imperomite", imperomite, imperomiteFluid, 1, 5, 6, 3, 0.8f, 0, 100, false, true); + registerTinkerMaterial("Cryptogen", cryptogen, cryptogenFluid, 1, 5, 6, 3, 0.8f, 0, 100, false, true); + registerTinkerMaterial("Fractoryte", fractoryte, fractoryteFluid, 1, 5, 6, 3, 0.8f, 0, 100, false, true); + registerTinkerMaterial("Seismodium", seismodium, seismodiumFluid, 1, 5, 6, 3, 0.8f, 0, 100, false, true); + registerTinkerMaterial("Terramite", terramite, terramiteFluid, 1, 5, 6, 3, 0.8f, 0, 100, false, true); + registerTinkerMaterial("InstablePrysocite", instablePrysocite, instablePrysociteFluid, 1, 5, 6, 3, 0.8f, 0, 100, false, true); + registerTinkerMaterial("BlazingXylitite", blazingXylitite, blazingXylititeFluid, 1, 5, 6, 3, 0.8f, 0, 100, false, true); + registerTinkerMaterial("Ultranite", ultranite, ultraniteFluid, 1, 5, 6, 3, 0.8f, 0, 100, false, true); + registerTinkerMaterial("RadiantPlinium", radiantPlinium, radiantPliniumFluid, 1, 5, 6, 3, 0.8f, 0, 100, false, true); + registerTinkerMaterial("Dysprosanium", dysprosanium, dysprosaniumFluid, 1, 5, 6, 3, 0.8f, 0, 100, false, true); + registerTinkerMaterial("RefractiveBysmuid", refractiveBysmuid, refractiveBysmuidFluid, 1, 5, 6, 3, 0.8f, 0, 100, false, true); + registerTinkerMaterial("InstableDyonite", instableDyonite, instableDyoniteFluid, 1, 5, 6, 3, 0.8f, 0, 100, false, true); + } + + @EventHandler + public void init(FMLInitializationEvent e) { + GameRegistry.registerWorldGenerator(new ZWorldGen(), 100); + GameRegistry.registerFuelHandler(new FuelHandler()); + Smelting.register(); + Crafting.register(); + + for (MaterialIntegration m : integrateList) { + m.integrateRecipes(); + } + } + + + @EventHandler + public void postInit(FMLPostInitializationEvent e) { + + } + + private void registerTinkerMaterial(String name, slimeknights.tconstruct.library.materials.Material material, Fluid fluid, int headDura, int headSpeed, int headAttack, int headLevel, float handleMod, int handleDura, int extra, boolean craft, boolean cast) { + material.addStats(new HeadMaterialStats(headDura, headSpeed, headAttack, headLevel)).addStats(new HandleMaterialStats(handleMod, handleDura)).addStats(new ExtraMaterialStats(extra)).setFluid(fluid).setCraftable(craft).setCastable(cast).setRenderInfo(fluid.getColor()); + MaterialIntegration integration = new MaterialIntegration(material, fluid, name); + integration.integrate(); + integrateList.add(integration); + } +} \ No newline at end of file diff --git a/src/main/java/com/sosnitzka/ztic_addon/blocks/BlockLigniteOre.java b/src/main/java/com/sosnitzka/ztic_addon/blocks/BlockLigniteOre.java index 7f4885c..1fb3cdc 100644 --- a/src/main/java/com/sosnitzka/ztic_addon/blocks/BlockLigniteOre.java +++ b/src/main/java/com/sosnitzka/ztic_addon/blocks/BlockLigniteOre.java @@ -1,7 +1,6 @@ package com.sosnitzka.ztic_addon.blocks; -import com.sosnitzka.ztic_addon.blocks.category.BasicBlockOre; -import com.sosnitzka.ztic_addon.main.ZTiC; +import com.sosnitzka.ztic_addon.generic.BasicBlockOre; import net.minecraft.block.material.Material; import net.minecraft.block.state.IBlockState; import net.minecraft.item.Item; @@ -12,10 +11,12 @@ import net.minecraft.world.World; import java.util.Random; +import static com.sosnitzka.ztic_addon.Items.lignite; + public class BlockLigniteOre extends BasicBlockOre { public BlockLigniteOre() { - super("lignite_ore", Material.ROCK, 4.0f, 5.0f, 1); + super("lignite_ore", Material.ROCK, 4.0f, 5.0f, 1, null); } @Override @@ -34,6 +35,6 @@ public class BlockLigniteOre extends BasicBlockOre { @Override public Item getItemDropped(IBlockState state, Random rand, int fortune) { - return ZTiC.lignite; + return lignite; } } diff --git a/src/main/java/com/sosnitzka/ztic_addon/blocks/BlockTiberiumOre.java b/src/main/java/com/sosnitzka/ztic_addon/blocks/BlockTiberiumOre.java index aa570e9..db5ae65 100644 --- a/src/main/java/com/sosnitzka/ztic_addon/blocks/BlockTiberiumOre.java +++ b/src/main/java/com/sosnitzka/ztic_addon/blocks/BlockTiberiumOre.java @@ -1,7 +1,7 @@ package com.sosnitzka.ztic_addon.blocks; -import com.sosnitzka.ztic_addon.blocks.category.BasicBlockOreGlow; -import com.sosnitzka.ztic_addon.main.ZTiC; +import com.sosnitzka.ztic_addon.Items; +import com.sosnitzka.ztic_addon.generic.BasicBlockOreGlow; import net.minecraft.block.material.Material; import net.minecraft.block.state.IBlockState; import net.minecraft.item.Item; @@ -15,7 +15,7 @@ import java.util.Random; public class BlockTiberiumOre extends BasicBlockOreGlow { public BlockTiberiumOre() { - super("tiberium_ore", Material.ROCK, 30.0f, 30.0f, 3, 0.8f); + super("tiberium_ore", Material.ROCK, 30.0f, 30.0f, 3, 0.8f, "oreTiberium"); } @Override @@ -34,6 +34,6 @@ public class BlockTiberiumOre extends BasicBlockOreGlow { @Override public Item getItemDropped(IBlockState state, Random rand, int fortune) { - return ZTiC.tiberiumShardInstable; + return Items.tiberiumShardInstable; } } diff --git a/src/main/java/com/sosnitzka/ztic_addon/fluids/BasicFluid.java b/src/main/java/com/sosnitzka/ztic_addon/fluids/BasicFluid.java deleted file mode 100644 index 69cd228..0000000 --- a/src/main/java/com/sosnitzka/ztic_addon/fluids/BasicFluid.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.sosnitzka.ztic_addon.fluids; - -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.fluids.Fluid; - -public class BasicFluid extends Fluid { - - private int color; - - public BasicFluid(String fluidName, int color) { - super(fluidName, new ResourceLocation("tconstruct:blocks/fluids/molten_metal"), new ResourceLocation("tconstruct:blocks/fluids/molten_metal_flow")); - this.color = color; - } - - @Override - public int getColor() { - return color; - } - -} diff --git a/src/main/java/com/sosnitzka/ztic_addon/blocks/category/BasicBlockGround.java b/src/main/java/com/sosnitzka/ztic_addon/generic/BasicBlockGround.java similarity index 91% rename from src/main/java/com/sosnitzka/ztic_addon/blocks/category/BasicBlockGround.java rename to src/main/java/com/sosnitzka/ztic_addon/generic/BasicBlockGround.java index 17a5163..dba47b9 100644 --- a/src/main/java/com/sosnitzka/ztic_addon/blocks/category/BasicBlockGround.java +++ b/src/main/java/com/sosnitzka/ztic_addon/generic/BasicBlockGround.java @@ -1,4 +1,4 @@ -package com.sosnitzka.ztic_addon.blocks.category; +package com.sosnitzka.ztic_addon.generic; import net.minecraft.block.Block; import net.minecraft.block.SoundType; diff --git a/src/main/java/com/sosnitzka/ztic_addon/blocks/category/BasicBlockOre.java b/src/main/java/com/sosnitzka/ztic_addon/generic/BasicBlockOre.java similarity index 60% rename from src/main/java/com/sosnitzka/ztic_addon/blocks/category/BasicBlockOre.java rename to src/main/java/com/sosnitzka/ztic_addon/generic/BasicBlockOre.java index 52078ef..edf835e 100644 --- a/src/main/java/com/sosnitzka/ztic_addon/blocks/category/BasicBlockOre.java +++ b/src/main/java/com/sosnitzka/ztic_addon/generic/BasicBlockOre.java @@ -1,16 +1,22 @@ -package com.sosnitzka.ztic_addon.blocks.category; +package com.sosnitzka.ztic_addon.generic; import net.minecraft.block.Block; import net.minecraft.block.material.Material; public class BasicBlockOre extends Block { + public String oreDictName; - public BasicBlockOre(String name, Material material, float hardness, float resistance, int harvest) { + public BasicBlockOre(String name, Material material, float hardness, float resistance, int harvest, String oreDictName) { super(material); setUnlocalizedName(name); setRegistryName(name); setHardness(hardness); setResistance(resistance); setHarvestLevel("pickaxe", harvest); + this.oreDictName = oreDictName; + } + + public boolean isOreDict() { + return this.oreDictName != null; } } diff --git a/src/main/java/com/sosnitzka/ztic_addon/blocks/category/BasicBlockOreGlow.java b/src/main/java/com/sosnitzka/ztic_addon/generic/BasicBlockOreGlow.java similarity index 51% rename from src/main/java/com/sosnitzka/ztic_addon/blocks/category/BasicBlockOreGlow.java rename to src/main/java/com/sosnitzka/ztic_addon/generic/BasicBlockOreGlow.java index 2e077dd..3a08210 100644 --- a/src/main/java/com/sosnitzka/ztic_addon/blocks/category/BasicBlockOreGlow.java +++ b/src/main/java/com/sosnitzka/ztic_addon/generic/BasicBlockOreGlow.java @@ -1,11 +1,11 @@ -package com.sosnitzka.ztic_addon.blocks.category; +package com.sosnitzka.ztic_addon.generic; import net.minecraft.block.material.Material; public class BasicBlockOreGlow extends BasicBlockOre { - public BasicBlockOreGlow(String name, Material material, float hardness, float resistance, int harvest, float glow) { - super(name, material, hardness, resistance, harvest); + public BasicBlockOreGlow(String name, Material material, float hardness, float resistance, int harvest, float glow, String oreDictName) { + super(name, material, hardness, resistance, harvest, oreDictName); setLightLevel(glow); } } diff --git a/src/main/java/com/sosnitzka/ztic_addon/generic/BasicItem.java b/src/main/java/com/sosnitzka/ztic_addon/generic/BasicItem.java new file mode 100644 index 0000000..0d2a32d --- /dev/null +++ b/src/main/java/com/sosnitzka/ztic_addon/generic/BasicItem.java @@ -0,0 +1,21 @@ +package com.sosnitzka.ztic_addon.generic; + +import net.minecraft.item.Item; + +public class BasicItem extends Item { + public String oreDictName; + + public BasicItem(String name, String oreDictName) { + setUnlocalizedName(name); + setRegistryName(name); + this.oreDictName = oreDictName; + } + + public BasicItem(String name) { + this(name, null); + } + + public boolean isOreDict() { + return this.oreDictName != null; + } +} diff --git a/src/main/java/com/sosnitzka/ztic_addon/generic/BasicTinkerFluid.java b/src/main/java/com/sosnitzka/ztic_addon/generic/BasicTinkerFluid.java new file mode 100644 index 0000000..1466ee4 --- /dev/null +++ b/src/main/java/com/sosnitzka/ztic_addon/generic/BasicTinkerFluid.java @@ -0,0 +1,28 @@ +package com.sosnitzka.ztic_addon.generic; + +import net.minecraft.util.ResourceLocation; +import net.minecraftforge.fluids.Fluid; + +public class BasicTinkerFluid extends Fluid { + + private int color; + private boolean toolForge; + + public BasicTinkerFluid(String fluidName, int color, boolean toolForge, int temp, int lumen, int visk) { + super(fluidName, new ResourceLocation("tconstruct:blocks/fluids/molten_metal"), new ResourceLocation("tconstruct:blocks/fluids/molten_metal_flow")); + this.color = color; + this.setTemperature(temp); + this.setLuminosity(lumen); + this.setViscosity(visk); + this.toolForge = toolForge; + } + + @Override + public int getColor() { + return color; + } + + public boolean isToolForge() { + return toolForge; + } +} diff --git a/src/main/java/com/sosnitzka/ztic_addon/items/BasicItem.java b/src/main/java/com/sosnitzka/ztic_addon/items/BasicItem.java deleted file mode 100644 index c7a828f..0000000 --- a/src/main/java/com/sosnitzka/ztic_addon/items/BasicItem.java +++ /dev/null @@ -1,11 +0,0 @@ -package com.sosnitzka.ztic_addon.items; - -import net.minecraft.item.Item; - -public class BasicItem extends Item { - - public BasicItem(String name) { - setUnlocalizedName(name); - setRegistryName(name); - } -} diff --git a/src/main/java/com/sosnitzka/ztic_addon/items/ItemIronNugget.java b/src/main/java/com/sosnitzka/ztic_addon/items/ItemIronNugget.java index 2a2f34e..8b396e4 100644 --- a/src/main/java/com/sosnitzka/ztic_addon/items/ItemIronNugget.java +++ b/src/main/java/com/sosnitzka/ztic_addon/items/ItemIronNugget.java @@ -1,5 +1,7 @@ package com.sosnitzka.ztic_addon.items; +import com.sosnitzka.ztic_addon.generic.BasicItem; + public class ItemIronNugget extends BasicItem { public ItemIronNugget() { diff --git a/src/main/java/com/sosnitzka/ztic_addon/items/ItemLignite.java b/src/main/java/com/sosnitzka/ztic_addon/items/ItemLignite.java index 5642b9a..d734e29 100644 --- a/src/main/java/com/sosnitzka/ztic_addon/items/ItemLignite.java +++ b/src/main/java/com/sosnitzka/ztic_addon/items/ItemLignite.java @@ -1,5 +1,7 @@ package com.sosnitzka.ztic_addon.items; +import com.sosnitzka.ztic_addon.generic.BasicItem; + public class ItemLignite extends BasicItem { public ItemLignite() { diff --git a/src/main/java/com/sosnitzka/ztic_addon/items/ItemSlaggoldIngot.java b/src/main/java/com/sosnitzka/ztic_addon/items/ItemSlaggoldIngot.java index bdc0be0..996c32d 100644 --- a/src/main/java/com/sosnitzka/ztic_addon/items/ItemSlaggoldIngot.java +++ b/src/main/java/com/sosnitzka/ztic_addon/items/ItemSlaggoldIngot.java @@ -1,5 +1,7 @@ package com.sosnitzka.ztic_addon.items; +import com.sosnitzka.ztic_addon.generic.BasicItem; + public class ItemSlaggoldIngot extends BasicItem { public ItemSlaggoldIngot() { diff --git a/src/main/java/com/sosnitzka/ztic_addon/items/ItemSlagironIngot.java b/src/main/java/com/sosnitzka/ztic_addon/items/ItemSlagironIngot.java index 48a9364..e76e9aa 100644 --- a/src/main/java/com/sosnitzka/ztic_addon/items/ItemSlagironIngot.java +++ b/src/main/java/com/sosnitzka/ztic_addon/items/ItemSlagironIngot.java @@ -1,5 +1,7 @@ package com.sosnitzka.ztic_addon.items; +import com.sosnitzka.ztic_addon.generic.BasicItem; + public class ItemSlagironIngot extends BasicItem { public ItemSlagironIngot() { diff --git a/src/main/java/com/sosnitzka/ztic_addon/main/ZTiC.java b/src/main/java/com/sosnitzka/ztic_addon/main/ZTiC.java deleted file mode 100644 index 8d1c997..0000000 --- a/src/main/java/com/sosnitzka/ztic_addon/main/ZTiC.java +++ /dev/null @@ -1,454 +0,0 @@ -package com.sosnitzka.ztic_addon.main; - -import com.google.common.collect.Lists; -import com.sosnitzka.ztic_addon.blocks.BlockLigniteOre; -import com.sosnitzka.ztic_addon.blocks.BlockTiberiumOre; -import com.sosnitzka.ztic_addon.blocks.category.BasicBlockGround; -import com.sosnitzka.ztic_addon.blocks.category.BasicBlockOre; -import com.sosnitzka.ztic_addon.blocks.category.BasicBlockOreGlow; -import com.sosnitzka.ztic_addon.fluids.BasicFluid; -import com.sosnitzka.ztic_addon.items.*; -import com.sosnitzka.ztic_addon.main.util.FuelHandler; -import com.sosnitzka.ztic_addon.main.util.recipes.Crafting; -import com.sosnitzka.ztic_addon.main.util.recipes.Smelting; -import com.sosnitzka.ztic_addon.main.world.ZWorldGen; -import com.sosnitzka.ztic_addon.proxy.ServerProxy; -import net.minecraft.block.Block; -import net.minecraft.block.material.Material; -import net.minecraft.item.Item; -import net.minecraft.item.ItemBlock; -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.nbt.NBTTagList; -import net.minecraft.util.text.TextFormatting; -import net.minecraftforge.fluids.Fluid; -import net.minecraftforge.fluids.FluidRegistry; -import net.minecraftforge.fml.common.Mod; -import net.minecraftforge.fml.common.Mod.EventHandler; -import net.minecraftforge.fml.common.SidedProxy; -import net.minecraftforge.fml.common.event.FMLInitializationEvent; -import net.minecraftforge.fml.common.event.FMLInterModComms; -import net.minecraftforge.fml.common.event.FMLPostInitializationEvent; -import net.minecraftforge.fml.common.event.FMLPreInitializationEvent; -import net.minecraftforge.fml.common.registry.GameRegistry; -import net.minecraftforge.oredict.OreDictionary; -import slimeknights.tconstruct.library.MaterialIntegration; -import slimeknights.tconstruct.library.materials.ExtraMaterialStats; -import slimeknights.tconstruct.library.materials.HandleMaterialStats; -import slimeknights.tconstruct.library.materials.HeadMaterialStats; - -import java.util.List; - -@Mod(modid = ZTiC.MODID, version = ZTiC.VERSION) -public class ZTiC { - - static final String MODID = "ztic_addon"; - static final String VERSION = "@VERSION@"; - - // ITEMS - public static ItemSlagironIngot slagironIngot = new ItemSlagironIngot(); - public static ItemLignite lignite = new ItemLignite(); - public static ItemIronNugget iron_nugget = new ItemIronNugget(); - public static ItemSlaggoldIngot slaggoldIngot = new ItemSlaggoldIngot(); - public static Item fuel_brick = new BasicItem("fuel_brick"); - - public static Item aardiumIngot = new BasicItem("aardium_ingot"); - public static Item adamantiteIngot = new BasicItem("adamantite_ingot"); - public static Item arcaniteIngot = new BasicItem("arcanite_ingot"); - public static Item axiidianIngot = new BasicItem("axiidian_ingot"); - public static Item bismuthIngot = new BasicItem("bismuth_ingot"); - public static Item eterniteIngot = new BasicItem("eternite_ingot"); - public static Item ignititeIngot = new BasicItem("ignitite_ingot"); - public static Item karmesineIngot = new BasicItem("karmesine_ingot"); - public static Item meteoriteIngot = new BasicItem("meteorite_ingot"); - public static Item mindoriteIngot = new BasicItem("mindorite_ingot"); - public static Item mythrilIngot = new BasicItem("mythril_ingot"); - public static Item palladiumIngot = new BasicItem("palladium_ingot"); - public static Item prometheumIngot = new BasicItem("prometheum_ingot"); - public static Item tiberiumIngot = new BasicItem("tiberium_ingot"); - public static Item vibraniumIngot = new BasicItem("vibranium_ingot"); - public static Item yrdeanIngot = new BasicItem("yrdean_ingot"); - - public static Item astriumIngot = new BasicItem("astrium_ingot"); - public static Item instableNitroniteIngot = new BasicItem("instable_nitronite_ingot"); - public static Item proxideumIngot = new BasicItem("proxideum_ingot"); - public static Item instablePolyniumIngot = new BasicItem("instable_polyniumingot"); - public static Item imperomiteIngot = new BasicItem("imperomite_ingot"); - public static Item cryptogenIngot = new BasicItem("cryptogen_ingot"); - public static Item fractoryteIngot = new BasicItem("fractoryte_ingot"); - public static Item seismodiumIngot = new BasicItem("seismodium_ingot"); - public static Item terramiteIngot = new BasicItem("terramite_ingot"); - public static Item instablePrysociteIngot = new BasicItem("instable_prysocite_ingot"); - public static Item blazingXylititeIngot = new BasicItem("blazing_xylitite_ingot"); - public static Item instableDyoniteIngot = new BasicItem("instable_dyonite_ingot"); - public static Item ultraniteIngot = new BasicItem("ultranite_ingot"); - public static Item radiantPliniumIngot = new BasicItem("radiant_plinium_ingot"); - public static Item dysprosaniumIngot = new BasicItem("dysprosanium_ingot"); - public static Item refractiveBysumIngot = new BasicItem("refractive_bysum_ingot"); - - - public static Item tiberiumShardInstable = new BasicItem("tiberium_shard_instable"); - public static Item tiberiumShardStable = new BasicItem("tiberium_shard_stable"); - - // BLOCKS - public static Block basalt = new BasicBlockOre("basalt", Material.ROCK, 45.0f, 35.0f, 3); - public static Block rottenGround = new BasicBlockGround("rotten_ground", Material.GROUND, 2.0f, 2.0f, 0); - public static Block ligniteOre = new BlockLigniteOre(); - - - public static Block aardiumOre = new BasicBlockOre("aardium_ore", Material.ROCK, 55.0f, 400.0f, 3); - public static Block adamantiteOre = new BasicBlockOre("adamantite_ore", Material.ROCK, 80.0f, 1000.0f, 4); - public static Block arcaniteOre = new BasicBlockOre("arcanite_ore", Material.ROCK, 23.0f, 25.0f, 2); - public static Block axiidianOre = new BasicBlockOre("axiidian_ore", Material.ROCK, 13.0f, 13.0f, 3); - public static Block bismuthOre = new BasicBlockOre("bismuth_ore", Material.ROCK, 8.0f, 8.0f, 1); - public static Block eterniteOre = new BasicBlockOre("eternite_ore", Material.ROCK, 24.0f, 25.0f, 3); - public static Block ignititeOre = new BasicBlockOre("ignitite_ore", Material.ROCK, 23.0f, 25.0f, 3); - public static Block karmesineOre = new BasicBlockOre("karmesine_ore", Material.ROCK, 13.0f, 15.0f, 1); - public static Block meteoriteOre = new BasicBlockOre("meteorite_ore", Material.ROCK, 60.0f, 500.0f, 4); - public static Block mindoriteOre = new BasicBlockOre("mindorite_ore", Material.ROCK, 12.0f, 12.0f, 2); - public static Block mythrilOre = new BasicBlockOre("mythril_ore", Material.ROCK, 25.0f, 25.0f, 4); - public static Block palladiumOre = new BasicBlockOre("palladium_ore", Material.ROCK, 25.0f, 25.0f, 3); - public static Block prometheumOre = new BasicBlockOreGlow("prometheum_ore", Material.ROCK, 35.0f, 35.0f, 4, 0.25f); - public static Block slagironOre = new BasicBlockOre("slagiron_ore", Material.ROCK, 3.0f, 5.0f, 1); - public static Block slaggoldOre = new BasicBlockOre("slaggold_ore", Material.ROCK, 3.0f, 5.0f, 1); - public static Block tiberiumOre = new BlockTiberiumOre(); - public static Block vibraniumOre = new BasicBlockOre("vibranium_ore", Material.ROCK, 70.0f, 800.0f, 4); - public static Block yrdeanOre = new BasicBlockOre("yrdean_ore", Material.ROCK, 13.0f, 15.0f, 3); - - public static slimeknights.tconstruct.library.materials.Material arcanite = new slimeknights.tconstruct.library.materials.Material("arcanite", TextFormatting.LIGHT_PURPLE); - public static slimeknights.tconstruct.library.materials.Material tiberium = new slimeknights.tconstruct.library.materials.Material("tiberium", TextFormatting.LIGHT_PURPLE); - public static slimeknights.tconstruct.library.materials.Material prometheum = new slimeknights.tconstruct.library.materials.Material("prometheum", TextFormatting.LIGHT_PURPLE); - public static slimeknights.tconstruct.library.materials.Material yrdean = new slimeknights.tconstruct.library.materials.Material("yrdean", TextFormatting.LIGHT_PURPLE); - public static slimeknights.tconstruct.library.materials.Material axiidian = new slimeknights.tconstruct.library.materials.Material("axiidian", TextFormatting.DARK_GREEN); - public static slimeknights.tconstruct.library.materials.Material bismuth = new slimeknights.tconstruct.library.materials.Material("bismuth", TextFormatting.DARK_GREEN); - public static slimeknights.tconstruct.library.materials.Material karmesine = new slimeknights.tconstruct.library.materials.Material("karmesine", TextFormatting.DARK_GREEN); - public static slimeknights.tconstruct.library.materials.Material mindorite = new slimeknights.tconstruct.library.materials.Material("mindorite", TextFormatting.DARK_GREEN); - public static slimeknights.tconstruct.library.materials.Material aardium = new slimeknights.tconstruct.library.materials.Material("aardium", TextFormatting.GRAY); - public static slimeknights.tconstruct.library.materials.Material meteorite = new slimeknights.tconstruct.library.materials.Material("meteorite", TextFormatting.GRAY); - public static slimeknights.tconstruct.library.materials.Material adamantite = new slimeknights.tconstruct.library.materials.Material("adamantite", TextFormatting.GRAY); - public static slimeknights.tconstruct.library.materials.Material vibranium = new slimeknights.tconstruct.library.materials.Material("vibranium", TextFormatting.GRAY); - public static slimeknights.tconstruct.library.materials.Material ignitite = new slimeknights.tconstruct.library.materials.Material("ignitite", TextFormatting.AQUA); - public static slimeknights.tconstruct.library.materials.Material palladium = new slimeknights.tconstruct.library.materials.Material("palladium", TextFormatting.AQUA); - public static slimeknights.tconstruct.library.materials.Material eternite = new slimeknights.tconstruct.library.materials.Material("eternite", TextFormatting.AQUA); - public static slimeknights.tconstruct.library.materials.Material mythril = new slimeknights.tconstruct.library.materials.Material("mythril", TextFormatting.AQUA); - - public static slimeknights.tconstruct.library.materials.Material astrium = new slimeknights.tconstruct.library.materials.Material("astrium", TextFormatting.LIGHT_PURPLE); - public static slimeknights.tconstruct.library.materials.Material instableNitronite = new slimeknights.tconstruct.library.materials.Material("instableNitronite", TextFormatting.LIGHT_PURPLE); - public static slimeknights.tconstruct.library.materials.Material proxideum = new slimeknights.tconstruct.library.materials.Material("proxideum", TextFormatting.LIGHT_PURPLE); - public static slimeknights.tconstruct.library.materials.Material instablePolynium = new slimeknights.tconstruct.library.materials.Material("instablePolynium", TextFormatting.LIGHT_PURPLE); - public static slimeknights.tconstruct.library.materials.Material imperomite = new slimeknights.tconstruct.library.materials.Material("imperomite", TextFormatting.DARK_GREEN); - public static slimeknights.tconstruct.library.materials.Material cryptogen = new slimeknights.tconstruct.library.materials.Material("cryptogen", TextFormatting.DARK_GREEN); - public static slimeknights.tconstruct.library.materials.Material fractoryte = new slimeknights.tconstruct.library.materials.Material("fractoryte", TextFormatting.DARK_GREEN); - public static slimeknights.tconstruct.library.materials.Material seismodium = new slimeknights.tconstruct.library.materials.Material("seismodium", TextFormatting.DARK_GREEN); - public static slimeknights.tconstruct.library.materials.Material terramite = new slimeknights.tconstruct.library.materials.Material("terramite", TextFormatting.GRAY); - public static slimeknights.tconstruct.library.materials.Material instablePrysocite = new slimeknights.tconstruct.library.materials.Material("instablePrysocite", TextFormatting.GRAY); - public static slimeknights.tconstruct.library.materials.Material blazingXylitite = new slimeknights.tconstruct.library.materials.Material("blazingXylitite", TextFormatting.GRAY); - public static slimeknights.tconstruct.library.materials.Material instableDyonite = new slimeknights.tconstruct.library.materials.Material("instableDyonite", TextFormatting.GRAY); - public static slimeknights.tconstruct.library.materials.Material ultranite = new slimeknights.tconstruct.library.materials.Material("ultranite", TextFormatting.AQUA); - public static slimeknights.tconstruct.library.materials.Material radiantPlinium = new slimeknights.tconstruct.library.materials.Material("radiantPlinium", TextFormatting.AQUA); - public static slimeknights.tconstruct.library.materials.Material dysprosanium = new slimeknights.tconstruct.library.materials.Material("dysprosanium", TextFormatting.AQUA); - public static slimeknights.tconstruct.library.materials.Material refractiveBysmuid = new slimeknights.tconstruct.library.materials.Material("refractiveBysmuidFluid", TextFormatting.AQUA); - - @SidedProxy(clientSide = "com.sosnitzka.ztic_addon.proxy.ClientProxy", serverSide = "com.sosnitzka.ztic_addon.proxy.ServerProxy") - private static ServerProxy proxy; - private List integrateList = Lists.newArrayList(); - - private static void registerBlockWithItem(Block block) { - GameRegistry.register(block); - GameRegistry.register(new ItemBlock(block).setRegistryName(block.getRegistryName())); - } - - @EventHandler - public void preInit(FMLPreInitializationEvent e) { - - - //Items - - - GameRegistry.register(tiberiumShardInstable); - GameRegistry.register(tiberiumShardStable); - - GameRegistry.register(slagironIngot); - GameRegistry.register(fuel_brick); - GameRegistry.register(slaggoldIngot); - GameRegistry.register(iron_nugget); - GameRegistry.register(lignite); - - GameRegistry.register(aardiumIngot); - GameRegistry.register(adamantiteIngot); - GameRegistry.register(arcaniteIngot); - GameRegistry.register(axiidianIngot); - GameRegistry.register(bismuthIngot); - GameRegistry.register(eterniteIngot); - GameRegistry.register(ignititeIngot); - GameRegistry.register(karmesineIngot); - GameRegistry.register(meteoriteIngot); - GameRegistry.register(mindoriteIngot); - GameRegistry.register(mythrilIngot); - GameRegistry.register(palladiumIngot); - GameRegistry.register(prometheumIngot); - GameRegistry.register(tiberiumIngot); - GameRegistry.register(vibraniumIngot); - GameRegistry.register(yrdeanIngot); - - GameRegistry.register(astriumIngot); - GameRegistry.register(instableDyoniteIngot); - GameRegistry.register(instableNitroniteIngot); - GameRegistry.register(instablePolyniumIngot); - GameRegistry.register(instablePrysociteIngot); - GameRegistry.register(imperomiteIngot); - GameRegistry.register(cryptogenIngot); - GameRegistry.register(proxideumIngot); - GameRegistry.register(fractoryteIngot); - GameRegistry.register(seismodiumIngot); - GameRegistry.register(terramiteIngot); - GameRegistry.register(blazingXylititeIngot); - GameRegistry.register(radiantPliniumIngot); - GameRegistry.register(ultraniteIngot); - GameRegistry.register(dysprosaniumIngot); - GameRegistry.register(refractiveBysumIngot); - - - //Blocks - - registerBlockWithItem(aardiumOre); - registerBlockWithItem(adamantiteOre); - registerBlockWithItem(arcaniteOre); - registerBlockWithItem(axiidianOre); - registerBlockWithItem(basalt); - registerBlockWithItem(bismuthOre); - registerBlockWithItem(eterniteOre); - registerBlockWithItem(ignititeOre); - registerBlockWithItem(karmesineOre); - registerBlockWithItem(ligniteOre); - registerBlockWithItem(meteoriteOre); - registerBlockWithItem(mindoriteOre); - registerBlockWithItem(mythrilOre); - registerBlockWithItem(palladiumOre); - registerBlockWithItem(prometheumOre); - registerBlockWithItem(rottenGround); - registerBlockWithItem(slagironOre); - registerBlockWithItem(slaggoldOre); - registerBlockWithItem(tiberiumOre); - registerBlockWithItem(vibraniumOre); - registerBlockWithItem(yrdeanOre); - - registerOreDict(); - - // TConstruct Fluids - - Fluid arcaniteFluid = new BasicFluid("arcaniteFluid", 0xFF272354); - Fluid aardiumFluid = new BasicFluid("aardiumFluid", 0xFFC3F93D); - Fluid adamantiteFluid = new BasicFluid("adamantiteFluid", 0xFFc45c82); - Fluid axiidianFluid = new BasicFluid("axiidianFluid", 0xFF77a19a); - Fluid bismuthFluid = new BasicFluid("bismuthFluid", 0xFF555555); - Fluid eterniteFluid = new BasicFluid("eterniteFluid", 0xFFfafa98); - Fluid ignititeFluid = new BasicFluid("ignititeFluid", 0xFFd29453); - Fluid karmesineFluid = new BasicFluid("karmesineFluid", 0xFFc16d6d); - Fluid meteoriteFluid = new BasicFluid("meteoriteFluid", 0xFF6e6a62); - Fluid mindoriteFluid = new BasicFluid("mindoriteFluid", 0xFF6bbbbf); - Fluid mythrilFluid = new BasicFluid("mythrilFluid", 0xFFa8c0ba); - Fluid palladiumFluid = new BasicFluid("palladiumFluid", 0xFFfe5c05); - Fluid prometheumFluid = new BasicFluid("prometheumFluid", 0xFF2b282f); - Fluid tiberiumFluid = new BasicFluid("tiberiumFluid", 0xFF86bd5a); - Fluid vibraniumFluid = new BasicFluid("vibraniumFluid", 0xFFb6bba8); - Fluid yrdeanFluid = new BasicFluid("yrdeanFluid", 0xFF3e3c6f); - - registerTinkerFluid("Arcanite", arcaniteFluid, true, 200, 10, 4000); - registerTinkerFluid("Aardium", aardiumFluid, true, 200, 10, 4000); - registerTinkerFluid("Adamantite", adamantiteFluid, true, 200, 10, 4000); - registerTinkerFluid("Axiidian", axiidianFluid, true, 200, 10, 4000); - registerTinkerFluid("Bismuth", bismuthFluid, true, 200, 10, 4000); - registerTinkerFluid("Eternite", eterniteFluid, true, 200, 10, 4000); - registerTinkerFluid("Ignitite", ignititeFluid, true, 200, 10, 4000); - registerTinkerFluid("Karmesine", karmesineFluid, true, 200, 10, 4000); - registerTinkerFluid("Meteorite", meteoriteFluid, true, 200, 10, 4000); - registerTinkerFluid("Mindorite", mindoriteFluid, true, 200, 10, 4000); - registerTinkerFluid("Mythril", mythrilFluid, true, 200, 10, 4000); - registerTinkerFluid("Palladium", palladiumFluid, true, 200, 10, 4000); - registerTinkerFluid("Prometheum", prometheumFluid, true, 200, 10, 4000); - registerTinkerFluid("Tiberium", tiberiumFluid, true, 200, 10, 4000); - registerTinkerFluid("Vibranium", vibraniumFluid, true, 200, 10, 4000); - registerTinkerFluid("Yrdean", yrdeanFluid, true, 200, 10, 4000); - - // TConstruct Alloys - - Fluid astriumFluid = new BasicFluid("astriumFluid", 0xFF7a3b74); - registerTinkerAlloys("Astrium", astriumFluid, true, 200, 10, 4000, 1, arcaniteFluid, 3, karmesineFluid, 2); - Fluid instableNitroniteFluid = new BasicFluid("instableNitroniteFluid", 0xFF659933); - registerTinkerAlloys("InstableNitronite", instableNitroniteFluid, true, 200, 10, 4000, 1, tiberiumFluid, 5, vibraniumFluid, 3); - Fluid proxideumFluid = new BasicFluid("proxideumFluid", 0xFF416565); - registerTinkerAlloys("Proxideum", proxideumFluid, true, 200, 10, 4000, 1, prometheumFluid, 3, axiidianFluid, 2); - Fluid instablePolyniumFluid = new BasicFluid("instablePolyniumFluid", 0xFF6c6aa3); - registerTinkerAlloys("InstablePolynium", instablePolyniumFluid, true, 200, 10, 4000, 1, yrdeanFluid, 3, meteoriteFluid, 2); - Fluid imperomiteFluid = new BasicFluid("imperomiteFluid", 0xFF339966); - registerTinkerAlloys("Imperomite", imperomiteFluid, true, 200, 10, 4000, 2, aardiumFluid, 3, prometheumFluid, 3); - Fluid cryptogenFluid = new BasicFluid("cryptogenFluid", 0xFF9f8a4a); - registerTinkerAlloys("Cryptogen", cryptogenFluid, true, 200, 10, 4000, 1, meteoriteFluid, 3, mythrilFluid, 2); - Fluid fractoryteFluid = new BasicFluid("fractoryteFluid", 0xFFb44a14); - registerTinkerAlloys("Fractoryte", fractoryteFluid, true, 200, 10, 4000, 1, adamantiteFluid, 4, arcaniteFluid, 2); - Fluid seismodiumFluid = new BasicFluid("seismodiumFluid", 0xFF46131D); - registerTinkerAlloys("Seismodium", seismodiumFluid, true, 200, 10, 4000, 1, vibraniumFluid, 4, palladiumFluid, 4); - Fluid terramiteFluid = new BasicFluid("terramiteFluid", 0xFFa6b27a); - registerTinkerAlloys("Terramite", terramiteFluid, true, 200, 10, 4000, 2, axiidianFluid, 4, eterniteFluid, 2); - Fluid instablePrysociteFluid = new BasicFluid("instablePrysociteFluid", 0xFFbde398); - registerTinkerAlloys("InstablePrysocite", instablePrysociteFluid, true, 200, 10, 4000, 1, bismuthFluid, 3, yrdeanFluid, 2); - Fluid blazingXylititeFluid = new BasicFluid("blazingXylititeFluid", 0xFFffc81d); - registerTinkerAlloys("BlazingXylitite", blazingXylititeFluid, true, 200, 10, 4000, 1, karmesineFluid, 3, ignititeFluid, 2); - Fluid instableDyoniteFluid = new BasicFluid("instableDyoniteFluid", 0xFFff6743); - registerTinkerAlloys("InstableDyonite", instableDyoniteFluid, true, 200, 10, 4000, 1, mindoriteFluid, 4, tiberiumFluid, 2); - Fluid ultraniteFluid = new BasicFluid("ultraniteFluid", 0xFFfff69b); - registerTinkerAlloys("Ultranite", ultraniteFluid, true, 200, 10, 4000, 1, ignititeFluid, 5, adamantiteFluid, 3); - Fluid radiantPliniumFluid = new BasicFluid("radiantPliniumFluid", 0xFFc1ff68); - registerTinkerAlloys("RadiantPlinium", radiantPliniumFluid, true, 200, 10, 4000, 1, palladiumFluid, 3, mindoriteFluid, 3); - Fluid dysprosaniumFluid = new BasicFluid("dysprosaniumFluid", 0xFFb7a2bd); - registerTinkerAlloys("Dysprosanium", dysprosaniumFluid, true, 200, 10, 4000, 1, eterniteFluid, 3, aardiumFluid, 3); - Fluid refractiveBysmuidFluid = new BasicFluid("refractiveBysmuidFluid", 0xFF7b97b0); - registerTinkerAlloys("RefractiveBysmuid", refractiveBysmuidFluid, true, 200, 10, 4000, 1, mythrilFluid, 4, bismuthFluid, 2); - - - // Material from ores - registerTinkerMaterial("Arcanite", arcanite, arcaniteFluid, 1, 5, 6, 7, 0.8f, 0, 100, false, true); - registerTinkerMaterial("Tiberium", tiberium, tiberiumFluid, 1, 5, 6, 6, 0.8f, 0, 100, false, true); - registerTinkerMaterial("Prometheum", prometheum, prometheumFluid, 1, 5, 6, 5, 0.8f, 0, 100, false, true); - registerTinkerMaterial("Yrdean", yrdean, yrdeanFluid, 1, 5, 6, 4, 0.8f, 0, 100, false, true); - registerTinkerMaterial("Axiidian", axiidian, axiidianFluid, 1, 5, 6, 3, 0.8f, 0, 100, false, true); - registerTinkerMaterial("Bismuth", bismuth, bismuthFluid, 1, 5, 6, 3, 0.8f, 0, 100, false, true); - registerTinkerMaterial("Karmesine", karmesine, karmesineFluid, 1, 5, 6, 3, 0.8f, 0, 100, false, true); - registerTinkerMaterial("Mindorite", mindorite, mindoriteFluid, 1, 5, 6, 3, 0.8f, 0, 100, false, true); - registerTinkerMaterial("Aardium", aardium, aardiumFluid, 1, 5, 6, 3, 0.8f, 0, 100, true, true); - registerTinkerMaterial("Meteorite", meteorite, meteoriteFluid, 1, 5, 6, 3, 0.8f, 0, 100, false, true); - registerTinkerMaterial("Adamantite", adamantite, adamantiteFluid, 1, 5, 6, 3, 0.8f, 0, 100, false, true); - registerTinkerMaterial("Vibranium", vibranium, vibraniumFluid, 1, 5, 6, 3, 0.8f, 0, 100, false, true); - registerTinkerMaterial("Ignitite", ignitite, ignititeFluid, 1, 5, 6, 3, 0.8f, 0, 100, false, true); - registerTinkerMaterial("Palladium", palladium, palladiumFluid, 1, 5, 6, 3, 0.8f, 0, 100, false, true); - registerTinkerMaterial("Eternite", eternite, eterniteFluid, 1, 5, 6, 3, 0.8f, 0, 100, false, true); - registerTinkerMaterial("Mythril", mythril, mythrilFluid, 1, 5, 6, 3, 0.8f, 0, 100, false, true); - - // Material from alloys - registerTinkerMaterial("Astrium", astrium, astriumFluid, 1, 5, 6, 7, 0.8f, 0, 100, false, true); - registerTinkerMaterial("InstableNitronite", instableNitronite, instableNitroniteFluid, 1, 5, 6, 6, 0.8f, 0, 100, false, true); - registerTinkerMaterial("Proxideum", proxideum, proxideumFluid, 1, 5, 6, 5, 0.8f, 0, 100, false, true); - registerTinkerMaterial("InstablePolynium", instablePolynium, instablePolyniumFluid, 1, 5, 6, 4, 0.8f, 0, 100, false, true); - registerTinkerMaterial("Imperomite", imperomite, imperomiteFluid, 1, 5, 6, 3, 0.8f, 0, 100, false, true); - registerTinkerMaterial("Cryptogen", cryptogen, cryptogenFluid, 1, 5, 6, 3, 0.8f, 0, 100, false, true); - registerTinkerMaterial("Fractoryte", fractoryte, fractoryteFluid, 1, 5, 6, 3, 0.8f, 0, 100, false, true); - registerTinkerMaterial("Seismodium", seismodium, seismodiumFluid, 1, 5, 6, 3, 0.8f, 0, 100, false, true); - registerTinkerMaterial("Terramite", terramite, terramiteFluid, 1, 5, 6, 3, 0.8f, 0, 100, false, true); - registerTinkerMaterial("InstablePrysocite", instablePrysocite, instablePrysociteFluid, 1, 5, 6, 3, 0.8f, 0, 100, false, true); - registerTinkerMaterial("BlazingXylitite", blazingXylitite, blazingXylititeFluid, 1, 5, 6, 3, 0.8f, 0, 100, false, true); - registerTinkerMaterial("Ultranite", ultranite, ultraniteFluid, 1, 5, 6, 3, 0.8f, 0, 100, false, true); - registerTinkerMaterial("RadiantPlinium", radiantPlinium, radiantPliniumFluid, 1, 5, 6, 3, 0.8f, 0, 100, false, true); - registerTinkerMaterial("Dysprosanium", dysprosanium, dysprosaniumFluid, 1, 5, 6, 3, 0.8f, 0, 100, false, true); - registerTinkerMaterial("RefractiveBysmuid", refractiveBysmuid, refractiveBysmuidFluid, 1, 5, 6, 3, 0.8f, 0, 100, false, true); - registerTinkerMaterial("InstableDyonite", instableDyonite, instableDyoniteFluid, 1, 5, 6, 3, 0.8f, 0, 100, false, true); - - - } - - @EventHandler - public void init(FMLInitializationEvent e) { - proxy.registerClientStuff(); - GameRegistry.registerWorldGenerator(new ZWorldGen(), 100); - GameRegistry.registerFuelHandler(new FuelHandler()); - new Smelting(); - new Crafting(); - - for (MaterialIntegration m : integrateList) { - m.integrateRecipes(); - } - } - - - @EventHandler - public void postInit(FMLPostInitializationEvent e) { - - - } - - private void registerOreDict() { - - OreDictionary.registerOre("oreAardium", aardiumOre); - OreDictionary.registerOre("ingotAardium", aardiumIngot); - OreDictionary.registerOre("ingotAstrium", astriumIngot); - OreDictionary.registerOre("oreArcanite", arcaniteOre); - OreDictionary.registerOre("ingotArcanite", arcaniteIngot); - OreDictionary.registerOre("oreAdamantite", adamantiteOre); - OreDictionary.registerOre("ingotAdamantite", adamantiteIngot); - OreDictionary.registerOre("oreAxiidian", axiidianOre); - OreDictionary.registerOre("ingotAxiidian", axiidianIngot); - OreDictionary.registerOre("oreBismuth", bismuthOre); - OreDictionary.registerOre("ingotBismuth", bismuthIngot); - OreDictionary.registerOre("oreEternite", eterniteOre); - OreDictionary.registerOre("ingotEternite", eterniteIngot); - OreDictionary.registerOre("oreIgnitite", ignititeOre); - OreDictionary.registerOre("ingotIgnitite", ignititeIngot); - OreDictionary.registerOre("oreKarmesine", karmesineOre); - OreDictionary.registerOre("ingotKarmesine", karmesineIngot); - OreDictionary.registerOre("oreMeteorite", meteoriteOre); - OreDictionary.registerOre("ingotMeteorite", meteoriteIngot); - OreDictionary.registerOre("oreMindorite", mindoriteOre); - OreDictionary.registerOre("ingotMindorite", mindoriteIngot); - OreDictionary.registerOre("oreMythril", mythrilOre); - OreDictionary.registerOre("ingotMythril", mythrilIngot); - OreDictionary.registerOre("orePalladium", palladiumOre); - OreDictionary.registerOre("ingotPalladium", palladiumIngot); - OreDictionary.registerOre("orePrometheum", prometheumOre); - OreDictionary.registerOre("ingotPrometheum", prometheumIngot); - OreDictionary.registerOre("oreTiberium", tiberiumOre); - OreDictionary.registerOre("ingotTiberium", tiberiumIngot); - OreDictionary.registerOre("oreVibranium", vibraniumOre); - OreDictionary.registerOre("ingotVibranium", vibraniumIngot); - OreDictionary.registerOre("oreYrdean", yrdeanOre); - OreDictionary.registerOre("ingotYrdean", yrdeanIngot); - - - } - - private void registerFluid(Fluid fluid) { - FluidRegistry.registerFluid(fluid); - FluidRegistry.addBucketForFluid(fluid); - } - - private void registerTinkerFluid(String oreDictSuffix, Fluid fluid, boolean toolForge, int temperature, int lumen, int viscosity) { - registerFluid(fluid); - - NBTTagCompound tag = new NBTTagCompound(); - tag.setString("fluid", fluid.getName()); - tag.setString("ore", oreDictSuffix); - tag.setBoolean("toolforge", toolForge); - FMLInterModComms.sendMessage("tconstruct", "integrateSmeltery", tag); - - fluid.setTemperature(temperature).setLuminosity(lumen).setViscosity(viscosity); - } - - private void registerTinkerAlloys(String oreDictSuffix, Fluid alloy, boolean toolFoge, int temperature, int lumen, int viscosity, int out, Fluid first, int inOne, Fluid second, int inTwo) { - registerTinkerFluid(oreDictSuffix, alloy, toolFoge, temperature, lumen, viscosity); - NBTTagList tagList = new NBTTagList(); - NBTTagCompound fluid = new NBTTagCompound(); - fluid.setString("FluidName", alloy.getName()); - fluid.setInteger("Amount", out); - tagList.appendTag(fluid); - fluid = new NBTTagCompound(); - fluid.setString("FluidName", first.getName()); - fluid.setInteger("Amount", inOne); - tagList.appendTag(fluid); - fluid = new NBTTagCompound(); - fluid.setString("FluidName", second.getName()); - fluid.setInteger("Amount", inTwo); - tagList.appendTag(fluid); - - NBTTagCompound message = new NBTTagCompound(); - message.setTag("alloy", tagList); - FMLInterModComms.sendMessage("tconstruct", "alloy", message); - } - - private void registerTinkerMaterial(String name, slimeknights.tconstruct.library.materials.Material material, Fluid fluid, int headDura, int headSpeed, int headAttack, int headLevel, float handleMod, int handleDura, int extra, boolean craft, boolean cast) { - material.addStats(new HeadMaterialStats(headDura, headSpeed, headAttack, headLevel)).addStats(new HandleMaterialStats(handleMod, handleDura)).addStats(new ExtraMaterialStats(extra)).setFluid(fluid).setCraftable(craft).setCastable(cast).setRenderInfo(fluid.getColor()); - MaterialIntegration integration = new MaterialIntegration(material, fluid, name); - integration.integrate(); - integrateList.add(integration); - - } - - -} \ No newline at end of file diff --git a/src/main/java/com/sosnitzka/ztic_addon/main/util/recipes/Crafting.java b/src/main/java/com/sosnitzka/ztic_addon/main/util/recipes/Crafting.java deleted file mode 100644 index d057a67..0000000 --- a/src/main/java/com/sosnitzka/ztic_addon/main/util/recipes/Crafting.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.sosnitzka.ztic_addon.main.util.recipes; - - -import com.sosnitzka.ztic_addon.main.ZTiC; -import net.minecraft.init.Items; -import net.minecraft.item.ItemStack; -import net.minecraftforge.fml.common.registry.GameRegistry; - -public class Crafting { - public Crafting(){ - register(); - } - - private void register(){ - GameRegistry.addShapelessRecipe(new ItemStack(ZTiC.fuel_brick), new Object[]{ - Items.COAL, Items.COAL, Items.COAL, ZTiC.lignite, ZTiC.lignite, ZTiC.lignite - }); - } - -} diff --git a/src/main/java/com/sosnitzka/ztic_addon/main/util/recipes/Smelting.java b/src/main/java/com/sosnitzka/ztic_addon/main/util/recipes/Smelting.java deleted file mode 100644 index a8f15e7..0000000 --- a/src/main/java/com/sosnitzka/ztic_addon/main/util/recipes/Smelting.java +++ /dev/null @@ -1,40 +0,0 @@ -package com.sosnitzka.ztic_addon.main.util.recipes; - - -import com.sosnitzka.ztic_addon.main.ZTiC; -import net.minecraft.init.Items; -import net.minecraft.item.ItemStack; -import net.minecraftforge.fml.common.registry.GameRegistry; -import org.apache.commons.lang3.RandomUtils; - -public class Smelting { - public Smelting(){ - register(); - } - - private void register(){ - GameRegistry.addSmelting(ZTiC.slagironOre, new ItemStack(ZTiC.slagironIngot), 1.0F); - GameRegistry.addSmelting(new ItemStack(ZTiC.slagironIngot, 3), new ItemStack(ZTiC.iron_nugget), 0); - GameRegistry.addSmelting(new ItemStack(ZTiC.slaggoldIngot, 3), new ItemStack(Items.GOLD_NUGGET), 0); - GameRegistry.addSmelting(new ItemStack(ZTiC.tiberiumShardInstable), new ItemStack(ZTiC.tiberiumShardStable), 0.2F); - - - GameRegistry.addSmelting(ZTiC.aardiumOre, new ItemStack(ZTiC.aardiumIngot), RandomUtils.nextFloat(0F, 2F)); - GameRegistry.addSmelting(ZTiC.arcaniteOre, new ItemStack(ZTiC.arcaniteIngot), RandomUtils.nextFloat(0F, 2F)); - GameRegistry.addSmelting(ZTiC.adamantiteOre, new ItemStack(ZTiC.adamantiteIngot), RandomUtils.nextFloat(0F, 2F)); - GameRegistry.addSmelting(ZTiC.axiidianOre, new ItemStack(ZTiC.axiidianIngot), RandomUtils.nextFloat(0F, 2F)); - GameRegistry.addSmelting(ZTiC.bismuthOre, new ItemStack(ZTiC.bismuthIngot), RandomUtils.nextFloat(0F, 2F)); - GameRegistry.addSmelting(ZTiC.eterniteOre, new ItemStack(ZTiC.eterniteIngot), RandomUtils.nextFloat(0F, 2F)); - GameRegistry.addSmelting(ZTiC.ignititeOre, new ItemStack(ZTiC.ignititeIngot), RandomUtils.nextFloat(0F, 2F)); - GameRegistry.addSmelting(ZTiC.karmesineOre, new ItemStack(ZTiC.karmesineIngot), RandomUtils.nextFloat(0F, 2F)); - GameRegistry.addSmelting(ZTiC.meteoriteOre, new ItemStack(ZTiC.meteoriteIngot), RandomUtils.nextFloat(0F, 2F)); - GameRegistry.addSmelting(ZTiC.mindoriteOre, new ItemStack(ZTiC.mindoriteIngot), RandomUtils.nextFloat(0F, 2F)); - GameRegistry.addSmelting(ZTiC.mythrilOre, new ItemStack(ZTiC.mythrilIngot), RandomUtils.nextFloat(0F, 2F)); - GameRegistry.addSmelting(ZTiC.palladiumOre, new ItemStack(ZTiC.palladiumIngot), RandomUtils.nextFloat(0F, 2F)); - GameRegistry.addSmelting(ZTiC.prometheumOre, new ItemStack(ZTiC.prometheumIngot), RandomUtils.nextFloat(0F, 2F)); - GameRegistry.addSmelting(ZTiC.tiberiumOre, new ItemStack(ZTiC.tiberiumShardStable, 2), RandomUtils.nextFloat(0F, 2F)); - GameRegistry.addSmelting(ZTiC.vibraniumOre, new ItemStack(ZTiC.vibraniumIngot), RandomUtils.nextFloat(0F, 2F)); - GameRegistry.addSmelting(ZTiC.yrdeanOre, new ItemStack(ZTiC.yrdeanIngot), RandomUtils.nextFloat(0F, 2F)); - - } -} diff --git a/src/main/java/com/sosnitzka/ztic_addon/main/world/ZWorldGen.java b/src/main/java/com/sosnitzka/ztic_addon/main/world/ZWorldGen.java deleted file mode 100644 index 010e4ed..0000000 --- a/src/main/java/com/sosnitzka/ztic_addon/main/world/ZWorldGen.java +++ /dev/null @@ -1,66 +0,0 @@ -package com.sosnitzka.ztic_addon.main.world; - -import com.sosnitzka.ztic_addon.main.ZTiC; -import com.sosnitzka.ztic_addon.main.util.Generator; -import net.minecraft.block.BlockStone; -import net.minecraft.init.Blocks; -import net.minecraft.world.World; -import net.minecraft.world.chunk.IChunkGenerator; -import net.minecraft.world.chunk.IChunkProvider; -import net.minecraftforge.fml.common.IWorldGenerator; - -import java.util.Random; - -public class ZWorldGen implements IWorldGenerator { - private void nether(Random random, int x, int z, World world) { - Generator.generateNetherOre(ZTiC.adamantiteOre.getDefaultState(), random, x, z, world, 25, 1, 32, 2, 5); - Generator.generateNetherOre(ZTiC.tiberiumOre.getDefaultState(), random, x, z, world, 60, 1, 128, 2, 7); - Generator.generateNetherOre(ZTiC.palladiumOre.getDefaultState(), random, x, z, world, 21, 32, 64, 2, 5); - Generator.generateOre(ZTiC.prometheumOre.getDefaultState(), random, x, z, world, 21, 48, 64, 2, 4); - } - - private void world(Random random, int x, int z, World world) { - Generator.generateOre(ZTiC.slagironOre.getDefaultState(), random, x, z, world, 40, 8, 96, 5, 16); - Generator.generateOre(ZTiC.slaggoldOre.getDefaultState(), random, x, z, world, 20, 8, 48, 5, 9); - Generator.generateOre(ZTiC.ligniteOre.getDefaultState(), random, x, z, world, 40, 8, 96, 5, 15); - Generator.generateOre(Blocks.IRON_ORE.getDefaultState(), random, x, z, world, 40, 8, 96, 2, 14); - Generator.generateOre(ZTiC.basalt.getDefaultState(), Blocks.LAVA.getDefaultState(), random, x, z, world, 100, 8, 24, 2, 5); - Generator.generateOre(ZTiC.rottenGround.getDefaultState(), Blocks.DIRT.getDefaultState(), random, x, z, world, 25, 50, 70, 2, 15); - - Generator.generateOre(ZTiC.vibraniumOre.getDefaultState(), random, x, z, world, 18, 48, 64, 2, 4); - Generator.generateOre(ZTiC.karmesineOre.getDefaultState(), random, x, z, world, 30, 16, 48, 2, 5); - Generator.generateOre(ZTiC.bismuthOre.getDefaultState(), random, x, z, world, 50, 50, 130, 2, 4); - Generator.generateOre(ZTiC.mythrilOre.getDefaultState(), random, x, z, world, 18, 16, 32, 2, 4); - Generator.generateOre(ZTiC.meteoriteOre.getDefaultState(), random, x, z, world, 12, 0, 32, 2, 10); - Generator.generateOre(ZTiC.mindoriteOre.getDefaultState(), Blocks.STONE.getDefaultState(), BlockStone.VARIANT, BlockStone.EnumType.DIORITE, random, x, z, world, 200, 16, 96, 2, 4); - Generator.generateOre(ZTiC.arcaniteOre.getDefaultState(), Blocks.STONE.getDefaultState(), BlockStone.VARIANT, BlockStone.EnumType.GRANITE, random, x, z, world, 200, 16, 96, 2, 4); - Generator.generateOre(ZTiC.eterniteOre.getDefaultState(), Blocks.STONE.getDefaultState(), BlockStone.VARIANT, BlockStone.EnumType.ANDESITE, random, x, z, world, 200, 16, 96, 2, 4); - } - - private void end(Random random, int x, int z, World world) { - - Generator.generateEndOre(ZTiC.yrdeanOre.getDefaultState(), random, x, z, world, 16, 10, 35, 2, 6); - Generator.generateEndOre(ZTiC.ignititeOre.getDefaultState(), random, x, z, world, 16, 20, 45, 2, 6); - Generator.generateEndOre(ZTiC.axiidianOre.getDefaultState(), random, x, z, world, 16, 30, 55, 2, 6); - Generator.generateEndOre(ZTiC.aardiumOre.getDefaultState(), random, x, z, world, 16, 40, 65, 2, 6); - } - - - @Override - public void generate(Random random, int chunkX, int chunkZ, World world, IChunkGenerator chunkGenerator, - IChunkProvider chunkProvider) { - int x = chunkX * 16; - int z = chunkZ * 16; - switch (world.provider.getDimension()) { - case -1: - nether(random, x, z, world); - break; - case 0: - world(random, x, z, world); - break; - case 1: - end(random, x, z, world); - break; - } - } -} diff --git a/src/main/java/com/sosnitzka/ztic_addon/proxy/ClientProxy.java b/src/main/java/com/sosnitzka/ztic_addon/proxy/ClientProxy.java index 21f9137..b9702c2 100644 --- a/src/main/java/com/sosnitzka/ztic_addon/proxy/ClientProxy.java +++ b/src/main/java/com/sosnitzka/ztic_addon/proxy/ClientProxy.java @@ -1,14 +1,14 @@ package com.sosnitzka.ztic_addon.proxy; -import com.sosnitzka.ztic_addon.main.ZTiC; import net.minecraft.block.Block; import net.minecraft.client.Minecraft; import net.minecraft.client.renderer.block.model.ModelResourceLocation; import net.minecraft.item.Item; -import static com.sosnitzka.ztic_addon.main.ZTiC.*; +import static com.sosnitzka.ztic_addon.Blocks.*; +import static com.sosnitzka.ztic_addon.Items.*; -public class ClientProxy extends ServerProxy { +public class ClientProxy { private static void registerBlockModel(Block block) { registerItemModel(Item.getItemFromBlock(block)); @@ -18,7 +18,6 @@ public class ClientProxy extends ServerProxy { Minecraft.getMinecraft().getRenderItem().getItemModelMesher().register(item, 0, new ModelResourceLocation(item.getRegistryName(), "inventory")); } - @Override public void registerClientStuff() { // Items registerItemModel(slagironIngot); @@ -64,26 +63,26 @@ public class ClientProxy extends ServerProxy { registerItemModel(refractiveBysumIngot); // Blocks - registerBlockModel(ZTiC.aardiumOre); - registerBlockModel(ZTiC.adamantiteOre); - registerBlockModel(ZTiC.arcaniteOre); - registerBlockModel(ZTiC.axiidianOre); - registerBlockModel(ZTiC.basalt); - registerBlockModel(ZTiC.bismuthOre); - registerBlockModel(ZTiC.eterniteOre); - registerBlockModel(ZTiC.ignititeOre); - registerBlockModel(ZTiC.karmesineOre); - registerBlockModel(ZTiC.ligniteOre); - registerBlockModel(ZTiC.meteoriteOre); - registerBlockModel(ZTiC.mindoriteOre); - registerBlockModel(ZTiC.mythrilOre); - registerBlockModel(ZTiC.palladiumOre); - registerBlockModel(ZTiC.prometheumOre); - registerBlockModel(ZTiC.rottenGround); - registerBlockModel(ZTiC.slagironOre); - registerBlockModel(ZTiC.slaggoldOre); - registerBlockModel(ZTiC.tiberiumOre); - registerBlockModel(ZTiC.vibraniumOre); - registerBlockModel(ZTiC.yrdeanOre); + registerBlockModel(aardiumOre); + registerBlockModel(adamantiteOre); + registerBlockModel(arcaniteOre); + registerBlockModel(axiidianOre); + registerBlockModel(basalt); + registerBlockModel(bismuthOre); + registerBlockModel(eterniteOre); + registerBlockModel(ignititeOre); + registerBlockModel(karmesineOre); + registerBlockModel(ligniteOre); + registerBlockModel(meteoriteOre); + registerBlockModel(mindoriteOre); + registerBlockModel(mythrilOre); + registerBlockModel(palladiumOre); + registerBlockModel(prometheumOre); + registerBlockModel(rottenGround); + registerBlockModel(slagironOre); + registerBlockModel(slaggoldOre); + registerBlockModel(tiberiumOre); + registerBlockModel(vibraniumOre); + registerBlockModel(yrdeanOre); } } diff --git a/src/main/java/com/sosnitzka/ztic_addon/proxy/ServerProxy.java b/src/main/java/com/sosnitzka/ztic_addon/proxy/ServerProxy.java index 438f96d..4489e9a 100644 --- a/src/main/java/com/sosnitzka/ztic_addon/proxy/ServerProxy.java +++ b/src/main/java/com/sosnitzka/ztic_addon/proxy/ServerProxy.java @@ -1,8 +1,8 @@ package com.sosnitzka.ztic_addon.proxy; -public class ServerProxy { +public class ServerProxy extends ClientProxy { - public void registerClientStuff() { + public void registerServerStuff() { } } diff --git a/src/main/java/com/sosnitzka/ztic_addon/recipes/Crafting.java b/src/main/java/com/sosnitzka/ztic_addon/recipes/Crafting.java new file mode 100644 index 0000000..a02af7a --- /dev/null +++ b/src/main/java/com/sosnitzka/ztic_addon/recipes/Crafting.java @@ -0,0 +1,15 @@ +package com.sosnitzka.ztic_addon.recipes; + + +import net.minecraft.init.Items; +import net.minecraft.item.ItemStack; +import net.minecraftforge.fml.common.registry.GameRegistry; + +import static com.sosnitzka.ztic_addon.Items.fuel_brick; +import static com.sosnitzka.ztic_addon.Items.lignite; + +public class Crafting { + public static void register() { + GameRegistry.addShapelessRecipe(new ItemStack(fuel_brick), Items.COAL, Items.COAL, Items.COAL, lignite, lignite, lignite); + } +} diff --git a/src/main/java/com/sosnitzka/ztic_addon/recipes/Smelting.java b/src/main/java/com/sosnitzka/ztic_addon/recipes/Smelting.java new file mode 100644 index 0000000..e34dc53 --- /dev/null +++ b/src/main/java/com/sosnitzka/ztic_addon/recipes/Smelting.java @@ -0,0 +1,39 @@ +package com.sosnitzka.ztic_addon.recipes; + + +import net.minecraft.init.Items; +import net.minecraft.item.ItemStack; +import net.minecraftforge.fml.common.registry.GameRegistry; +import org.apache.commons.lang3.RandomUtils; + +import static com.sosnitzka.ztic_addon.Blocks.*; +import static com.sosnitzka.ztic_addon.Items.*; + +public class Smelting { + + public static void register() { + GameRegistry.addSmelting(slagironOre, new ItemStack(slagironIngot), 1.0F); + GameRegistry.addSmelting(new ItemStack(slagironIngot, 3), new ItemStack(iron_nugget), 0); + GameRegistry.addSmelting(new ItemStack(slaggoldIngot, 3), new ItemStack(Items.GOLD_NUGGET), 0); + GameRegistry.addSmelting(new ItemStack(tiberiumShardInstable), new ItemStack(tiberiumShardStable), 0.2F); + + + GameRegistry.addSmelting(aardiumOre, new ItemStack(aardiumIngot), RandomUtils.nextFloat(0F, 2F)); + GameRegistry.addSmelting(arcaniteOre, new ItemStack(arcaniteIngot), RandomUtils.nextFloat(0F, 2F)); + GameRegistry.addSmelting(adamantiteOre, new ItemStack(adamantiteIngot), RandomUtils.nextFloat(0F, 2F)); + GameRegistry.addSmelting(axiidianOre, new ItemStack(axiidianIngot), RandomUtils.nextFloat(0F, 2F)); + GameRegistry.addSmelting(bismuthOre, new ItemStack(bismuthIngot), RandomUtils.nextFloat(0F, 2F)); + GameRegistry.addSmelting(eterniteOre, new ItemStack(eterniteIngot), RandomUtils.nextFloat(0F, 2F)); + GameRegistry.addSmelting(ignititeOre, new ItemStack(ignititeIngot), RandomUtils.nextFloat(0F, 2F)); + GameRegistry.addSmelting(karmesineOre, new ItemStack(karmesineIngot), RandomUtils.nextFloat(0F, 2F)); + GameRegistry.addSmelting(meteoriteOre, new ItemStack(meteoriteIngot), RandomUtils.nextFloat(0F, 2F)); + GameRegistry.addSmelting(mindoriteOre, new ItemStack(mindoriteIngot), RandomUtils.nextFloat(0F, 2F)); + GameRegistry.addSmelting(mythrilOre, new ItemStack(mythrilIngot), RandomUtils.nextFloat(0F, 2F)); + GameRegistry.addSmelting(palladiumOre, new ItemStack(palladiumIngot), RandomUtils.nextFloat(0F, 2F)); + GameRegistry.addSmelting(prometheumOre, new ItemStack(prometheumIngot), RandomUtils.nextFloat(0F, 2F)); + GameRegistry.addSmelting(tiberiumOre, new ItemStack(tiberiumShardStable, 2), RandomUtils.nextFloat(0F, 2F)); + GameRegistry.addSmelting(vibraniumOre, new ItemStack(vibraniumIngot), RandomUtils.nextFloat(0F, 2F)); + GameRegistry.addSmelting(yrdeanOre, new ItemStack(yrdeanIngot), RandomUtils.nextFloat(0F, 2F)); + + } +} diff --git a/src/main/java/com/sosnitzka/ztic_addon/main/util/FuelHandler.java b/src/main/java/com/sosnitzka/ztic_addon/util/FuelHandler.java similarity index 63% rename from src/main/java/com/sosnitzka/ztic_addon/main/util/FuelHandler.java rename to src/main/java/com/sosnitzka/ztic_addon/util/FuelHandler.java index 9ab6edd..d27dfc0 100644 --- a/src/main/java/com/sosnitzka/ztic_addon/main/util/FuelHandler.java +++ b/src/main/java/com/sosnitzka/ztic_addon/util/FuelHandler.java @@ -1,18 +1,20 @@ -package com.sosnitzka.ztic_addon.main.util; +package com.sosnitzka.ztic_addon.util; -import com.sosnitzka.ztic_addon.main.ZTiC; import net.minecraft.item.ItemStack; import net.minecraftforge.fml.common.IFuelHandler; import org.apache.commons.lang3.RandomUtils; +import static com.sosnitzka.ztic_addon.Items.fuel_brick; +import static com.sosnitzka.ztic_addon.Items.lignite; + public class FuelHandler implements IFuelHandler { @Override public int getBurnTime(ItemStack fuel) { - if (fuel.getItem().equals(ZTiC.lignite)) { + if (fuel.getItem().equals(lignite)) { return 200 * 2; } - if (fuel.getItem().equals(ZTiC.fuel_brick)) { + if (fuel.getItem().equals(fuel_brick)) { return RandomUtils.nextInt(1, RandomUtils.nextInt(1, RandomUtils.nextInt(1, 64))) * 200; } return 0; diff --git a/src/main/java/com/sosnitzka/ztic_addon/main/util/Generator.java b/src/main/java/com/sosnitzka/ztic_addon/util/Generator.java similarity index 95% rename from src/main/java/com/sosnitzka/ztic_addon/main/util/Generator.java rename to src/main/java/com/sosnitzka/ztic_addon/util/Generator.java index 97937c7..372f131 100644 --- a/src/main/java/com/sosnitzka/ztic_addon/main/util/Generator.java +++ b/src/main/java/com/sosnitzka/ztic_addon/util/Generator.java @@ -1,5 +1,6 @@ -package com.sosnitzka.ztic_addon.main.util; +package com.sosnitzka.ztic_addon.util; +import com.sosnitzka.ztic_addon.world.ZWorldGenMinable; import net.minecraft.block.properties.IProperty; import net.minecraft.block.state.IBlockState; import net.minecraft.init.Blocks; diff --git a/src/main/java/com/sosnitzka/ztic_addon/main/util/StateMatcher.java b/src/main/java/com/sosnitzka/ztic_addon/util/StateMatcher.java similarity index 98% rename from src/main/java/com/sosnitzka/ztic_addon/main/util/StateMatcher.java rename to src/main/java/com/sosnitzka/ztic_addon/util/StateMatcher.java index acaaedf..25dfde8 100644 --- a/src/main/java/com/sosnitzka/ztic_addon/main/util/StateMatcher.java +++ b/src/main/java/com/sosnitzka/ztic_addon/util/StateMatcher.java @@ -1,4 +1,4 @@ -package com.sosnitzka.ztic_addon.main.util; +package com.sosnitzka.ztic_addon.util; import com.google.common.base.Predicate; import net.minecraft.block.properties.IProperty; diff --git a/src/main/java/com/sosnitzka/ztic_addon/util/Utils.java b/src/main/java/com/sosnitzka/ztic_addon/util/Utils.java new file mode 100644 index 0000000..143ac66 --- /dev/null +++ b/src/main/java/com/sosnitzka/ztic_addon/util/Utils.java @@ -0,0 +1,54 @@ +package com.sosnitzka.ztic_addon.util; + + +import net.minecraft.block.Block; +import net.minecraft.item.ItemBlock; +import net.minecraft.nbt.NBTTagCompound; +import net.minecraft.nbt.NBTTagList; +import net.minecraftforge.fluids.Fluid; +import net.minecraftforge.fluids.FluidRegistry; +import net.minecraftforge.fml.common.event.FMLInterModComms; +import net.minecraftforge.fml.common.registry.GameRegistry; + +public class Utils { + public static void registerBlockWithItem(Block block) { + GameRegistry.register(block); + GameRegistry.register(new ItemBlock(block).setRegistryName(block.getRegistryName())); + } + + + public static void registerTinkerFluid(String oreDictSuffix, Fluid fluid, boolean toolForge) { + registerFluid(fluid); + + NBTTagCompound tag = new NBTTagCompound(); + tag.setString("fluid", fluid.getName()); + tag.setString("ore", oreDictSuffix); + tag.setBoolean("toolforge", toolForge); + FMLInterModComms.sendMessage("tconstruct", "integrateSmeltery", tag); + } + + public static void registerFluid(Fluid fluid) { + FluidRegistry.registerFluid(fluid); + FluidRegistry.addBucketForFluid(fluid); + } + + public static void registerTinkerAlloys(Fluid alloy, int out, Fluid first, int inOne, Fluid second, int inTwo) { + NBTTagList tagList = new NBTTagList(); + NBTTagCompound fluid = new NBTTagCompound(); + fluid.setString("FluidName", alloy.getName()); + fluid.setInteger("Amount", out); + tagList.appendTag(fluid); + fluid = new NBTTagCompound(); + fluid.setString("FluidName", first.getName()); + fluid.setInteger("Amount", inOne); + tagList.appendTag(fluid); + fluid = new NBTTagCompound(); + fluid.setString("FluidName", second.getName()); + fluid.setInteger("Amount", inTwo); + tagList.appendTag(fluid); + + NBTTagCompound message = new NBTTagCompound(); + message.setTag("alloy", tagList); + FMLInterModComms.sendMessage("tconstruct", "alloy", message); + } +} diff --git a/src/main/java/com/sosnitzka/ztic_addon/world/ZWorldGen.java b/src/main/java/com/sosnitzka/ztic_addon/world/ZWorldGen.java new file mode 100644 index 0000000..fa7fcfd --- /dev/null +++ b/src/main/java/com/sosnitzka/ztic_addon/world/ZWorldGen.java @@ -0,0 +1,67 @@ +package com.sosnitzka.ztic_addon.world; + +import com.sosnitzka.ztic_addon.util.Generator; +import net.minecraft.block.BlockStone; +import net.minecraft.init.Blocks; +import net.minecraft.world.World; +import net.minecraft.world.chunk.IChunkGenerator; +import net.minecraft.world.chunk.IChunkProvider; +import net.minecraftforge.fml.common.IWorldGenerator; + +import java.util.Random; + +import static com.sosnitzka.ztic_addon.Blocks.*; + +public class ZWorldGen implements IWorldGenerator { + private void nether(Random random, int x, int z, World world) { + Generator.generateNetherOre(adamantiteOre.getDefaultState(), random, x, z, world, 25, 1, 32, 2, 5); + Generator.generateNetherOre(tiberiumOre.getDefaultState(), random, x, z, world, 60, 1, 128, 2, 7); + Generator.generateNetherOre(palladiumOre.getDefaultState(), random, x, z, world, 21, 32, 64, 2, 5); + Generator.generateOre(prometheumOre.getDefaultState(), random, x, z, world, 21, 48, 64, 2, 4); + } + + private void world(Random random, int x, int z, World world) { + Generator.generateOre(slagironOre.getDefaultState(), random, x, z, world, 40, 8, 96, 5, 16); + Generator.generateOre(slaggoldOre.getDefaultState(), random, x, z, world, 20, 8, 48, 5, 9); + Generator.generateOre(ligniteOre.getDefaultState(), random, x, z, world, 40, 8, 96, 5, 15); + Generator.generateOre(Blocks.IRON_ORE.getDefaultState(), random, x, z, world, 40, 8, 96, 2, 14); + Generator.generateOre(basalt.getDefaultState(), Blocks.LAVA.getDefaultState(), random, x, z, world, 100, 8, 24, 2, 5); + Generator.generateOre(rottenGround.getDefaultState(), Blocks.DIRT.getDefaultState(), random, x, z, world, 25, 50, 70, 2, 15); + + Generator.generateOre(vibraniumOre.getDefaultState(), random, x, z, world, 18, 48, 64, 2, 4); + Generator.generateOre(karmesineOre.getDefaultState(), random, x, z, world, 30, 16, 48, 2, 5); + Generator.generateOre(bismuthOre.getDefaultState(), random, x, z, world, 50, 50, 130, 2, 4); + Generator.generateOre(mythrilOre.getDefaultState(), random, x, z, world, 18, 16, 32, 2, 4); + Generator.generateOre(meteoriteOre.getDefaultState(), random, x, z, world, 12, 0, 32, 2, 10); + Generator.generateOre(mindoriteOre.getDefaultState(), Blocks.STONE.getDefaultState(), BlockStone.VARIANT, BlockStone.EnumType.DIORITE, random, x, z, world, 200, 16, 96, 2, 4); + Generator.generateOre(arcaniteOre.getDefaultState(), Blocks.STONE.getDefaultState(), BlockStone.VARIANT, BlockStone.EnumType.GRANITE, random, x, z, world, 200, 16, 96, 2, 4); + Generator.generateOre(eterniteOre.getDefaultState(), Blocks.STONE.getDefaultState(), BlockStone.VARIANT, BlockStone.EnumType.ANDESITE, random, x, z, world, 200, 16, 96, 2, 4); + } + + private void end(Random random, int x, int z, World world) { + + Generator.generateEndOre(yrdeanOre.getDefaultState(), random, x, z, world, 16, 10, 35, 2, 6); + Generator.generateEndOre(ignititeOre.getDefaultState(), random, x, z, world, 16, 20, 45, 2, 6); + Generator.generateEndOre(axiidianOre.getDefaultState(), random, x, z, world, 16, 30, 55, 2, 6); + Generator.generateEndOre(aardiumOre.getDefaultState(), random, x, z, world, 16, 40, 65, 2, 6); + } + + + @Override + public void generate(Random random, int chunkX, int chunkZ, World world, IChunkGenerator chunkGenerator, + IChunkProvider chunkProvider) { + int x = chunkX * 16; + int z = chunkZ * 16; + switch (world.provider.getDimension()) { + case -1: + nether(random, x, z, world); + break; + case 0: + world(random, x, z, world); + break; + case 1: + end(random, x, z, world); + break; + } + } +} diff --git a/src/main/java/com/sosnitzka/ztic_addon/main/util/ZWorldGenMinable.java b/src/main/java/com/sosnitzka/ztic_addon/world/ZWorldGenMinable.java similarity index 97% rename from src/main/java/com/sosnitzka/ztic_addon/main/util/ZWorldGenMinable.java rename to src/main/java/com/sosnitzka/ztic_addon/world/ZWorldGenMinable.java index cf0ed41..85988ad 100644 --- a/src/main/java/com/sosnitzka/ztic_addon/main/util/ZWorldGenMinable.java +++ b/src/main/java/com/sosnitzka/ztic_addon/world/ZWorldGenMinable.java @@ -1,6 +1,7 @@ -package com.sosnitzka.ztic_addon.main.util; +package com.sosnitzka.ztic_addon.world; import com.google.common.base.Predicate; +import com.sosnitzka.ztic_addon.util.StateMatcher; import net.minecraft.block.state.IBlockState; import net.minecraft.block.state.pattern.BlockMatcher; import net.minecraft.init.Blocks;