diff --git a/run/resourcepacks/unity/assets/TechReborn.xcf b/run/resourcepacks/unity/assets/TechReborn.xcf index b60d6b9dd..d184d1253 100644 Binary files a/run/resourcepacks/unity/assets/TechReborn.xcf and b/run/resourcepacks/unity/assets/TechReborn.xcf differ diff --git a/run/resourcepacks/unity/assets/techreborn/blockstates/machines/centrifuge.json b/run/resourcepacks/unity/assets/techreborn/blockstates/machines/centrifuge.json new file mode 100644 index 000000000..b206798cb --- /dev/null +++ b/run/resourcepacks/unity/assets/techreborn/blockstates/machines/centrifuge.json @@ -0,0 +1,63 @@ +{ + "forge_marker":1, + "defaults":{ + "transform":"forge:default-block", + "model":"orientable", + "textures":{ + "particle":"techreborn:blocks/machine/advanced_machines/advanced_machine_west", + "down":"techreborn:blocks/machine/advanced_machines/advanced_machine_bottom", + "west":"techreborn:blocks/machine/advanced_machines/advanced_machine_west", + "east":"techreborn:blocks/machine/advanced_machines/advanced_machine_east", + "south":"techreborn:blocks/machine/advanced_machines/advanced_machine_back" + } + }, + "variants":{ + "inventory":{ + "transform":"forge:default-block", + "textures":{ + "top":"techreborn:blocks/machine/advanced_machines/industrial_centrifuge_top_off", + "front":"techreborn:blocks/machine/advanced_machines/industrial_centrifuge_front_off" + } + }, + "facing":{ + "north":{ + + }, + "east":{ + "y":90 + }, + "south":{ + "y":180 + }, + "west":{ + "y":270 + } + }, + "active":{ + "true":{ + "textures":{ + "top":"techreborn:blocks/machine/advanced_machines/industrial_centrifuge_top_on", + "front":"techreborn:blocks/machine/advanced_machines/industrial_centrifuge_front_on" + } + }, + "false":{ + "textures":{ + "top":"techreborn:blocks/machine/advanced_machines/industrial_centrifuge_top_off", + "front":"techreborn:blocks/machine/advanced_machines/industrial_centrifuge_front_off" + } + } + }, + "inventory": { + "model": "orientable", + "textures": { + "particle":"techreborn:blocks/machine/advanced_machines/advanced_machine_west", + "top":"techreborn:blocks/machine/advanced_machines/industrial_centrifuge_top_off", + "down":"techreborn:blocks/machine/advanced_machines/advanced_machine_bottom", + "west":"techreborn:blocks/machine/advanced_machines/advanced_machine_west", + "east":"techreborn:blocks/machine/advanced_machines/advanced_machine_east", + "south":"techreborn:blocks/machine/advanced_machines/advanced_machine_back", + "front": "techreborn:blocks/machine/advanced_machines/industrial_centrifuge_front_off" + } + } + } +} \ No newline at end of file diff --git a/run/resourcepacks/unity/assets/techreborn/blockstates/tier1_machines/vacuum_freezer.json b/run/resourcepacks/unity/assets/techreborn/blockstates/tier1_machines/vacuum_freezer.json new file mode 100644 index 000000000..ab51ea399 --- /dev/null +++ b/run/resourcepacks/unity/assets/techreborn/blockstates/tier1_machines/vacuum_freezer.json @@ -0,0 +1,59 @@ +{ + "forge_marker":1, + "defaults":{ + "transform":"forge:default-block", + "model":"orientable", + "textures":{ + "particle":"techreborn:blocks/machine/tier1_machines/machine_side", + "down":"techreborn:blocks/machine/tier1_machines/machine_bottom", + "side":"techreborn:blocks/machine/tier1_machines/machine_side" + } + }, + "variants":{ + "inventory":{ + "transform":"forge:default-block", + "textures":{ + "top":"techreborn:blocks/machine/tier1_machines/vacuum_freezer_top_off", + "front":"techreborn:blocks/machine/tier1_machines/vacuum_freezer_front_off" + } + }, + "facing":{ + "north":{ + + }, + "east":{ + "y":90 + }, + "south":{ + "y":180 + }, + "west":{ + "y":270 + } + }, + "active":{ + "true":{ + "textures":{ + "top":"techreborn:blocks/machine/tier1_machines/vacuum_freezer_top_on", + "front":"techreborn:blocks/machine/tier1_machines/vacuum_freezer_front_on" + } + }, + "false":{ + "textures":{ + "top":"techreborn:blocks/machine/tier1_machines/vacuum_freezer_top_off", + "front":"techreborn:blocks/machine/tier1_machines/vacuum_freezer_front_off" + } + } + }, + "inventory": { + "model": "orientable", + "textures": { + "particle": "techreborn:blocks/machine/tier1_machines/machine_side", + "down":"techreborn:blocks/machine/tier1_machines/machine_bottom", + "side": "techreborn:blocks/machine/tier1_machines/machine_side", + "top":"techreborn:blocks/machine/tier1_machines/vacuum_freezer_top_off", + "front":"techreborn:blocks/machine/tier1_machines/vacuum_freezer_front_off" + } + } + } +} \ No newline at end of file diff --git a/run/resourcepacks/unity/assets/techreborn/textures/blocks/machine/greg_machines/vacuum_freezer_front_off.png b/run/resourcepacks/unity/assets/techreborn/textures/blocks/machine/greg_machines/vacuum_freezer_front_off.png new file mode 100644 index 000000000..4ea05b50f Binary files /dev/null and b/run/resourcepacks/unity/assets/techreborn/textures/blocks/machine/greg_machines/vacuum_freezer_front_off.png differ diff --git a/run/resourcepacks/unity/assets/techreborn/textures/blocks/machine/greg_machines/vacuum_freezer_front_on.png b/run/resourcepacks/unity/assets/techreborn/textures/blocks/machine/greg_machines/vacuum_freezer_front_on.png new file mode 100644 index 000000000..a264e519f Binary files /dev/null and b/run/resourcepacks/unity/assets/techreborn/textures/blocks/machine/greg_machines/vacuum_freezer_front_on.png differ diff --git a/run/resourcepacks/unity/assets/techreborn/textures/blocks/machine/greg_machines/vacuum_freezer_front_on.png.mcmeta b/run/resourcepacks/unity/assets/techreborn/textures/blocks/machine/greg_machines/vacuum_freezer_front_on.png.mcmeta new file mode 100644 index 000000000..1685882be --- /dev/null +++ b/run/resourcepacks/unity/assets/techreborn/textures/blocks/machine/greg_machines/vacuum_freezer_front_on.png.mcmeta @@ -0,0 +1,6 @@ +{ + "animation": { + "frametime": 10, + "interpolate": true + } +} diff --git a/run/resourcepacks/unity/assets/techreborn/textures/blocks/machine/greg_machines/vacuum_freezer_top_off.png b/run/resourcepacks/unity/assets/techreborn/textures/blocks/machine/greg_machines/vacuum_freezer_top_off.png new file mode 100644 index 000000000..a1861c709 Binary files /dev/null and b/run/resourcepacks/unity/assets/techreborn/textures/blocks/machine/greg_machines/vacuum_freezer_top_off.png differ diff --git a/run/resourcepacks/unity/assets/techreborn/textures/blocks/machine/greg_machines/vacuum_freezer_top_on.png b/run/resourcepacks/unity/assets/techreborn/textures/blocks/machine/greg_machines/vacuum_freezer_top_on.png new file mode 100644 index 000000000..69bb27780 Binary files /dev/null and b/run/resourcepacks/unity/assets/techreborn/textures/blocks/machine/greg_machines/vacuum_freezer_top_on.png differ diff --git a/run/resourcepacks/unity/assets/techreborn/textures/blocks/machine/greg_machines/vacuum_freezer_top_on.png.mcmeta b/run/resourcepacks/unity/assets/techreborn/textures/blocks/machine/greg_machines/vacuum_freezer_top_on.png.mcmeta new file mode 100644 index 000000000..1685882be --- /dev/null +++ b/run/resourcepacks/unity/assets/techreborn/textures/blocks/machine/greg_machines/vacuum_freezer_top_on.png.mcmeta @@ -0,0 +1,6 @@ +{ + "animation": { + "frametime": 10, + "interpolate": true + } +} diff --git a/run/resourcepacks/unity/assets/techreborn/textures/models/armor/bronze_layer_1.png b/run/resourcepacks/unity/assets/techreborn/textures/models/armor/bronze_layer_1.png new file mode 100644 index 000000000..ab22ed870 Binary files /dev/null and b/run/resourcepacks/unity/assets/techreborn/textures/models/armor/bronze_layer_1.png differ diff --git a/run/resourcepacks/unity/assets/techreborn/textures/models/armor/bronze_layer_2.png b/run/resourcepacks/unity/assets/techreborn/textures/models/armor/bronze_layer_2.png new file mode 100644 index 000000000..43b307ccd Binary files /dev/null and b/run/resourcepacks/unity/assets/techreborn/textures/models/armor/bronze_layer_2.png differ diff --git a/run/resourcepacks/unity/assets/techreborn/textures/models/armor/peridot_layer_1.png b/run/resourcepacks/unity/assets/techreborn/textures/models/armor/peridot_layer_1.png new file mode 100644 index 000000000..23f8e95c9 Binary files /dev/null and b/run/resourcepacks/unity/assets/techreborn/textures/models/armor/peridot_layer_1.png differ diff --git a/run/resourcepacks/unity/assets/techreborn/textures/models/armor/peridot_layer_2.png b/run/resourcepacks/unity/assets/techreborn/textures/models/armor/peridot_layer_2.png new file mode 100644 index 000000000..c4d5bb752 Binary files /dev/null and b/run/resourcepacks/unity/assets/techreborn/textures/models/armor/peridot_layer_2.png differ diff --git a/run/resourcepacks/unity/assets/techreborn/textures/models/armor/ruby_layer_1.png b/run/resourcepacks/unity/assets/techreborn/textures/models/armor/ruby_layer_1.png new file mode 100644 index 000000000..12a603511 Binary files /dev/null and b/run/resourcepacks/unity/assets/techreborn/textures/models/armor/ruby_layer_1.png differ diff --git a/run/resourcepacks/unity/assets/techreborn/textures/models/armor/ruby_layer_2.png b/run/resourcepacks/unity/assets/techreborn/textures/models/armor/ruby_layer_2.png new file mode 100644 index 000000000..2c4cb1bad Binary files /dev/null and b/run/resourcepacks/unity/assets/techreborn/textures/models/armor/ruby_layer_2.png differ diff --git a/run/resourcepacks/unity/assets/techreborn/textures/models/armor/sapphire_layer_1.png b/run/resourcepacks/unity/assets/techreborn/textures/models/armor/sapphire_layer_1.png new file mode 100644 index 000000000..8d64113f8 Binary files /dev/null and b/run/resourcepacks/unity/assets/techreborn/textures/models/armor/sapphire_layer_1.png differ diff --git a/run/resourcepacks/unity/assets/techreborn/textures/models/armor/sapphire_layer_2.png b/run/resourcepacks/unity/assets/techreborn/textures/models/armor/sapphire_layer_2.png new file mode 100644 index 000000000..50c89c73b Binary files /dev/null and b/run/resourcepacks/unity/assets/techreborn/textures/models/armor/sapphire_layer_2.png differ diff --git a/src/main/java/techreborn/config/ConfigTechReborn.java b/src/main/java/techreborn/config/ConfigTechReborn.java index c3ebb0462..2c5a3e0fa 100644 --- a/src/main/java/techreborn/config/ConfigTechReborn.java +++ b/src/main/java/techreborn/config/ConfigTechReborn.java @@ -141,6 +141,9 @@ public class ConfigTechReborn // EMC public static boolean UseConnectedTextures; public static boolean OreUnifer; + + public static boolean enableGemArmorAndTools; + public static Configuration config; private static ConfigTechReborn instance = null; @@ -370,6 +373,8 @@ public class ConfigTechReborn .get(CATEGORY_FEATURES, "Frequency Transmitter tooltips", true, "Allow Frequency Transmitter to display tooltip info") .getBoolean(true); + enableGemArmorAndTools = config.get(CATEGORY_FEATURES, "Gem tools and armor", true, "Should the gem tools and armor be added to the game").getBoolean(true); + // Crafting ExpensiveMacerator = config .get(CATEGORY_CRAFTING, "Expensive Macerator", true, "Allow TechReborn to change the Macerator recipe") diff --git a/src/main/java/techreborn/init/ModBlocks.java b/src/main/java/techreborn/init/ModBlocks.java index 019527757..dc3b371c9 100644 --- a/src/main/java/techreborn/init/ModBlocks.java +++ b/src/main/java/techreborn/init/ModBlocks.java @@ -5,7 +5,6 @@ import net.minecraft.block.material.Material; import net.minecraft.init.Blocks; import net.minecraft.item.ItemBlock; import net.minecraft.item.ItemStack; -import net.minecraft.util.ResourceLocation; import net.minecraftforge.fml.common.registry.GameRegistry; import net.minecraftforge.oredict.OreDictionary; import reborncore.common.tile.TileMachineBase; @@ -199,6 +198,7 @@ public class ModBlocks centrifuge = new BlockCentrifuge(); registerBlock(centrifuge, "techreborn.centrifuge"); GameRegistry.registerTileEntity(TileCentrifuge.class, "TileCentrifugeTR"); + Core.proxy.registerCustomBlockSateLocation(centrifuge, "machines/centrifuge"); RollingMachine = new BlockRollingMachine(Material.ROCK); registerBlock(RollingMachine, "rollingmachine"); diff --git a/src/main/java/techreborn/init/ModItems.java b/src/main/java/techreborn/init/ModItems.java index 7693a9bd6..cba8404eb 100644 --- a/src/main/java/techreborn/init/ModItems.java +++ b/src/main/java/techreborn/init/ModItems.java @@ -13,6 +13,7 @@ import reborncore.common.util.BucketHandler; import techreborn.Core; import techreborn.api.Reference; import techreborn.blocks.BlockMachineFrame; +import techreborn.config.ConfigTechReborn; import techreborn.events.OreUnifier; import techreborn.items.*; import techreborn.items.armor.ItemLapotronPack; @@ -186,85 +187,88 @@ public class ModItems advancedJackhammer = PoweredItem.createItem(ItemAdvancedJackhammer.class); registerItem(advancedJackhammer, "ironjackhammer"); - bronzeSword = new ItemTRSword(Reference.BRONZE); - registerItem(bronzeSword, "bronzeSword"); - bronzePickaxe = new ItemTRPickaxe(Reference.BRONZE); - registerItem(bronzePickaxe, "bronzePickaxe"); - bronzeSpade = new ItemTRSpade(Reference.BRONZE); - registerItem(bronzeSpade, "bronzeSpade"); - bronzeAxe = new ItemTRAxe(Reference.BRONZE); - registerItem(bronzeAxe, "bronzeAxe"); - bronzeHoe = new ItemTRHoe(Reference.BRONZE); - registerItem(bronzeHoe, "bronzeHoe"); + if(ConfigTechReborn.enableGemArmorAndTools){ + bronzeSword = new ItemTRSword(Reference.BRONZE); + registerItem(bronzeSword, "bronzeSword"); + bronzePickaxe = new ItemTRPickaxe(Reference.BRONZE); + registerItem(bronzePickaxe, "bronzePickaxe"); + bronzeSpade = new ItemTRSpade(Reference.BRONZE); + registerItem(bronzeSpade, "bronzeSpade"); + bronzeAxe = new ItemTRAxe(Reference.BRONZE); + registerItem(bronzeAxe, "bronzeAxe"); + bronzeHoe = new ItemTRHoe(Reference.BRONZE); + registerItem(bronzeHoe, "bronzeHoe"); - bronzeHelmet = new ItemTRArmour(Reference.BRONZE_ARMOUR, EntityEquipmentSlot.HEAD); - registerItem(bronzeHelmet, "bronzeHelmet"); - bronzeChestplate = new ItemTRArmour(Reference.BRONZE_ARMOUR, EntityEquipmentSlot.CHEST); - registerItem(bronzeChestplate, "bronzeChestplate"); - bronzeLeggings = new ItemTRArmour(Reference.BRONZE_ARMOUR, EntityEquipmentSlot.LEGS); - registerItem(bronzeLeggings, "bronzeLeggings"); - bronzeBoots = new ItemTRArmour(Reference.BRONZE_ARMOUR, EntityEquipmentSlot.FEET); - registerItem(bronzeBoots, "bronzeBoots"); + bronzeHelmet = new ItemTRArmour(Reference.BRONZE_ARMOUR, EntityEquipmentSlot.HEAD); + registerItem(bronzeHelmet, "bronzeHelmet"); + bronzeChestplate = new ItemTRArmour(Reference.BRONZE_ARMOUR, EntityEquipmentSlot.CHEST); + registerItem(bronzeChestplate, "bronzeChestplate"); + bronzeLeggings = new ItemTRArmour(Reference.BRONZE_ARMOUR, EntityEquipmentSlot.LEGS); + registerItem(bronzeLeggings, "bronzeLeggings"); + bronzeBoots = new ItemTRArmour(Reference.BRONZE_ARMOUR, EntityEquipmentSlot.FEET); + registerItem(bronzeBoots, "bronzeBoots"); - rubySword = new ItemTRSword(Reference.RUBY); - registerItem(rubySword, "rubySword"); - rubyPickaxe = new ItemTRPickaxe(Reference.RUBY); - registerItem(rubyPickaxe, "rubyPickaxe"); - rubySpade = new ItemTRSpade(Reference.RUBY); - registerItem(rubySpade, "rubySpade"); - rubyAxe = new ItemTRAxe(Reference.RUBY); - registerItem(rubyAxe, "rubyAxe"); - rubyHoe = new ItemTRHoe(Reference.RUBY); - registerItem(rubyHoe, "rubyHoe"); + rubySword = new ItemTRSword(Reference.RUBY); + registerItem(rubySword, "rubySword"); + rubyPickaxe = new ItemTRPickaxe(Reference.RUBY); + registerItem(rubyPickaxe, "rubyPickaxe"); + rubySpade = new ItemTRSpade(Reference.RUBY); + registerItem(rubySpade, "rubySpade"); + rubyAxe = new ItemTRAxe(Reference.RUBY); + registerItem(rubyAxe, "rubyAxe"); + rubyHoe = new ItemTRHoe(Reference.RUBY); + registerItem(rubyHoe, "rubyHoe"); - rubyHelmet = new ItemTRArmour(Reference.RUBY_ARMOUR, EntityEquipmentSlot.HEAD); - registerItem(rubyHelmet, "rubyHelmet"); - rubyChestplate = new ItemTRArmour(Reference.RUBY_ARMOUR, EntityEquipmentSlot.CHEST); - registerItem(rubyChestplate, "rubyChestplate"); - rubyLeggings = new ItemTRArmour(Reference.RUBY_ARMOUR, EntityEquipmentSlot.LEGS); - registerItem(rubyLeggings, "rubyLeggings"); - rubyBoots = new ItemTRArmour(Reference.RUBY_ARMOUR, EntityEquipmentSlot.FEET); - registerItem(rubyBoots, "rubyBoots"); + rubyHelmet = new ItemTRArmour(Reference.RUBY_ARMOUR, EntityEquipmentSlot.HEAD); + registerItem(rubyHelmet, "rubyHelmet"); + rubyChestplate = new ItemTRArmour(Reference.RUBY_ARMOUR, EntityEquipmentSlot.CHEST); + registerItem(rubyChestplate, "rubyChestplate"); + rubyLeggings = new ItemTRArmour(Reference.RUBY_ARMOUR, EntityEquipmentSlot.LEGS); + registerItem(rubyLeggings, "rubyLeggings"); + rubyBoots = new ItemTRArmour(Reference.RUBY_ARMOUR, EntityEquipmentSlot.FEET); + registerItem(rubyBoots, "rubyBoots"); - sapphireSword = new ItemTRSword(Reference.SAPPHIRE); - registerItem(sapphireSword, "sapphireSword"); - sapphirePickaxe = new ItemTRPickaxe(Reference.SAPPHIRE); - registerItem(sapphirePickaxe, "sapphirePickaxe"); - sapphireSpade = new ItemTRSpade(Reference.SAPPHIRE); - registerItem(sapphireSpade, "sapphireSpade"); - sapphireAxe = new ItemTRAxe(Reference.SAPPHIRE); - registerItem(sapphireAxe, "sapphireAxe"); - sapphireHoe = new ItemTRHoe(Reference.SAPPHIRE); - registerItem(sapphireHoe, "sapphireHoe"); + sapphireSword = new ItemTRSword(Reference.SAPPHIRE); + registerItem(sapphireSword, "sapphireSword"); + sapphirePickaxe = new ItemTRPickaxe(Reference.SAPPHIRE); + registerItem(sapphirePickaxe, "sapphirePickaxe"); + sapphireSpade = new ItemTRSpade(Reference.SAPPHIRE); + registerItem(sapphireSpade, "sapphireSpade"); + sapphireAxe = new ItemTRAxe(Reference.SAPPHIRE); + registerItem(sapphireAxe, "sapphireAxe"); + sapphireHoe = new ItemTRHoe(Reference.SAPPHIRE); + registerItem(sapphireHoe, "sapphireHoe"); - sapphireHelmet = new ItemTRArmour(Reference.SAPPHIRE_ARMOUR, EntityEquipmentSlot.HEAD); - registerItem(sapphireHelmet, "sapphireHelmet"); - sapphireChestplate = new ItemTRArmour(Reference.SAPPHIRE_ARMOUR, EntityEquipmentSlot.CHEST); - registerItem(sapphireChestplate, "sapphireChestplate"); - sapphireLeggings = new ItemTRArmour(Reference.SAPPHIRE_ARMOUR, EntityEquipmentSlot.LEGS); - registerItem(sapphireLeggings, "sapphireLeggings"); - sapphireBoots = new ItemTRArmour(Reference.SAPPHIRE_ARMOUR, EntityEquipmentSlot.FEET); - registerItem(sapphireBoots, "sapphireBoots"); + sapphireHelmet = new ItemTRArmour(Reference.SAPPHIRE_ARMOUR, EntityEquipmentSlot.HEAD); + registerItem(sapphireHelmet, "sapphireHelmet"); + sapphireChestplate = new ItemTRArmour(Reference.SAPPHIRE_ARMOUR, EntityEquipmentSlot.CHEST); + registerItem(sapphireChestplate, "sapphireChestplate"); + sapphireLeggings = new ItemTRArmour(Reference.SAPPHIRE_ARMOUR, EntityEquipmentSlot.LEGS); + registerItem(sapphireLeggings, "sapphireLeggings"); + sapphireBoots = new ItemTRArmour(Reference.SAPPHIRE_ARMOUR, EntityEquipmentSlot.FEET); + registerItem(sapphireBoots, "sapphireBoots"); - peridotSword = new ItemTRSword(Reference.PERIDOT); - registerItem(peridotSword, "peridotSword"); - peridotPickaxe = new ItemTRPickaxe(Reference.PERIDOT); - registerItem(peridotPickaxe, "peridotPickaxe"); - peridotSpade = new ItemTRSpade(Reference.PERIDOT); - registerItem(peridotSpade, "peridotSpade"); - peridotAxe = new ItemTRAxe(Reference.PERIDOT); - registerItem(peridotAxe, "peridotAxe"); - peridotHoe = new ItemTRHoe(Reference.PERIDOT); - registerItem(peridotHoe, "peridotHoe"); + peridotSword = new ItemTRSword(Reference.PERIDOT); + registerItem(peridotSword, "peridotSword"); + peridotPickaxe = new ItemTRPickaxe(Reference.PERIDOT); + registerItem(peridotPickaxe, "peridotPickaxe"); + peridotSpade = new ItemTRSpade(Reference.PERIDOT); + registerItem(peridotSpade, "peridotSpade"); + peridotAxe = new ItemTRAxe(Reference.PERIDOT); + registerItem(peridotAxe, "peridotAxe"); + peridotHoe = new ItemTRHoe(Reference.PERIDOT); + registerItem(peridotHoe, "peridotHoe"); + + peridotHelmet = new ItemTRArmour(Reference.PERIDOT_ARMOUR, EntityEquipmentSlot.HEAD); + registerItem(peridotHelmet, "peridotHelmet"); + peridotChestplate = new ItemTRArmour(Reference.PERIDOT_ARMOUR, EntityEquipmentSlot.CHEST); + registerItem(peridotChestplate, "peridotChestplate"); + peridotLeggings = new ItemTRArmour(Reference.PERIDOT_ARMOUR, EntityEquipmentSlot.LEGS); + registerItem(peridotLeggings, "peridotLeggings"); + peridotBoots = new ItemTRArmour(Reference.PERIDOT_ARMOUR, EntityEquipmentSlot.FEET); + registerItem(peridotBoots, "peridotBoots"); + } - peridotHelmet = new ItemTRArmour(Reference.PERIDOT_ARMOUR, EntityEquipmentSlot.HEAD); - registerItem(peridotHelmet, "peridotHelmet"); - peridotChestplate = new ItemTRArmour(Reference.PERIDOT_ARMOUR, EntityEquipmentSlot.CHEST); - registerItem(peridotChestplate, "peridotChestplate"); - peridotLeggings = new ItemTRArmour(Reference.PERIDOT_ARMOUR, EntityEquipmentSlot.LEGS); - registerItem(peridotLeggings, "peridotLeggings"); - peridotBoots = new ItemTRArmour(Reference.PERIDOT_ARMOUR, EntityEquipmentSlot.FEET); - registerItem(peridotBoots, "peridotBoots"); wrench = new ItemWrench(); registerItem(wrench, "wrench"); diff --git a/src/main/java/techreborn/init/ModRecipes.java b/src/main/java/techreborn/init/ModRecipes.java index 3d7207c83..289650100 100644 --- a/src/main/java/techreborn/init/ModRecipes.java +++ b/src/main/java/techreborn/init/ModRecipes.java @@ -495,28 +495,30 @@ public class ModRecipes CraftingHelper.addShapedOreRecipe(new ItemStack(ModBlocks.ironFence, 6), " ", "RRR", "RRR", 'R', ItemIngots.getIngotByName("refinedIron")); - addGemToolRecipes(new ItemStack(ModItems.rubySword), new ItemStack(ModItems.rubyPickaxe), - new ItemStack(ModItems.rubyAxe), new ItemStack(ModItems.rubyHoe), new ItemStack(ModItems.rubySpade), - new ItemStack(ModItems.rubyHelmet), new ItemStack(ModItems.rubyChestplate), - new ItemStack(ModItems.rubyLeggings), new ItemStack(ModItems.rubyBoots), "gemRuby"); + if(ConfigTechReborn.enableGemArmorAndTools){ + addGemToolRecipes(new ItemStack(ModItems.rubySword), new ItemStack(ModItems.rubyPickaxe), + new ItemStack(ModItems.rubyAxe), new ItemStack(ModItems.rubyHoe), new ItemStack(ModItems.rubySpade), + new ItemStack(ModItems.rubyHelmet), new ItemStack(ModItems.rubyChestplate), + new ItemStack(ModItems.rubyLeggings), new ItemStack(ModItems.rubyBoots), "gemRuby"); - addGemToolRecipes(new ItemStack(ModItems.sapphireSword), new ItemStack(ModItems.sapphirePickaxe), - new ItemStack(ModItems.sapphireAxe), new ItemStack(ModItems.sapphireHoe), - new ItemStack(ModItems.sapphireSpade), new ItemStack(ModItems.sapphireHelmet), - new ItemStack(ModItems.sapphireChestplate), new ItemStack(ModItems.sapphireLeggings), - new ItemStack(ModItems.sapphireBoots), "gemSapphire"); + addGemToolRecipes(new ItemStack(ModItems.sapphireSword), new ItemStack(ModItems.sapphirePickaxe), + new ItemStack(ModItems.sapphireAxe), new ItemStack(ModItems.sapphireHoe), + new ItemStack(ModItems.sapphireSpade), new ItemStack(ModItems.sapphireHelmet), + new ItemStack(ModItems.sapphireChestplate), new ItemStack(ModItems.sapphireLeggings), + new ItemStack(ModItems.sapphireBoots), "gemSapphire"); - addGemToolRecipes(new ItemStack(ModItems.peridotSword), new ItemStack(ModItems.peridotPickaxe), - new ItemStack(ModItems.peridotAxe), new ItemStack(ModItems.peridotHoe), - new ItemStack(ModItems.peridotSpade), new ItemStack(ModItems.peridotHelmet), - new ItemStack(ModItems.peridotChestplate), new ItemStack(ModItems.peridotLeggings), - new ItemStack(ModItems.peridotBoots), "gemPeridot"); + addGemToolRecipes(new ItemStack(ModItems.peridotSword), new ItemStack(ModItems.peridotPickaxe), + new ItemStack(ModItems.peridotAxe), new ItemStack(ModItems.peridotHoe), + new ItemStack(ModItems.peridotSpade), new ItemStack(ModItems.peridotHelmet), + new ItemStack(ModItems.peridotChestplate), new ItemStack(ModItems.peridotLeggings), + new ItemStack(ModItems.peridotBoots), "gemPeridot"); - addGemToolRecipes(new ItemStack(ModItems.bronzeSword), new ItemStack(ModItems.bronzePickaxe), - new ItemStack(ModItems.bronzeAxe), new ItemStack(ModItems.bronzeHoe), - new ItemStack(ModItems.bronzeSpade), new ItemStack(ModItems.bronzeHelmet), - new ItemStack(ModItems.bronzeChestplate), new ItemStack(ModItems.bronzeLeggings), - new ItemStack(ModItems.bronzeBoots), "ingotBronze"); + addGemToolRecipes(new ItemStack(ModItems.bronzeSword), new ItemStack(ModItems.bronzePickaxe), + new ItemStack(ModItems.bronzeAxe), new ItemStack(ModItems.bronzeHoe), + new ItemStack(ModItems.bronzeSpade), new ItemStack(ModItems.bronzeHelmet), + new ItemStack(ModItems.bronzeChestplate), new ItemStack(ModItems.bronzeLeggings), + new ItemStack(ModItems.bronzeBoots), "ingotBronze"); + } CraftingHelper .addShapedOreRecipe(new ItemStack(ModItems.ironChainsaw), " SS", "SCS", "BS ", 'S', "ingotSteel", 'B', diff --git a/src/main/java/techreborn/proxies/ClientProxy.java b/src/main/java/techreborn/proxies/ClientProxy.java index 1133df2b1..7930f2ba8 100644 --- a/src/main/java/techreborn/proxies/ClientProxy.java +++ b/src/main/java/techreborn/proxies/ClientProxy.java @@ -5,18 +5,14 @@ import net.minecraft.block.state.IBlockState; import net.minecraft.client.renderer.ItemMeshDefinition; import net.minecraft.client.renderer.block.model.ModelBakery; import net.minecraft.client.renderer.block.model.ModelResourceLocation; +import net.minecraft.client.renderer.block.statemap.DefaultStateMapper; import net.minecraft.client.renderer.block.statemap.StateMap; import net.minecraft.client.renderer.block.statemap.StateMapperBase; import net.minecraft.client.renderer.entity.Render; import net.minecraft.client.renderer.entity.RenderManager; -import net.minecraft.client.resources.IResourceManager; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.util.ResourceLocation; -import net.minecraft.util.Util; -import net.minecraftforge.client.model.ICustomModelLoader; -import net.minecraftforge.client.model.IModel; -import net.minecraftforge.client.model.ModelDynBucket; import net.minecraftforge.client.model.ModelLoader; import net.minecraftforge.common.MinecraftForge; import net.minecraftforge.fml.client.registry.ClientRegistry; @@ -24,7 +20,6 @@ import net.minecraftforge.fml.client.registry.IRenderFactory; import net.minecraftforge.fml.client.registry.RenderingRegistry; import net.minecraftforge.fml.common.event.FMLInitializationEvent; import net.minecraftforge.fml.common.event.FMLPreInitializationEvent; -import net.minecraftforge.fml.common.registry.GameData; import reborncore.RebornCore; import reborncore.client.multiblock.MultiblockRenderEvent; import reborncore.common.blocks.BlockMachineBase; @@ -33,19 +28,16 @@ import techreborn.client.ClientMultiBlocks; import techreborn.client.IconSupplier; import techreborn.client.RegisterItemJsons; import techreborn.client.StackToolTipEvent; -import techreborn.client.VersionCheckerClient; import techreborn.client.hud.ChargeHud; import techreborn.client.keybindings.KeyBindings; import techreborn.client.render.entitys.RenderNukePrimed; import techreborn.entitys.EntityNukePrimed; import techreborn.init.ModBlocks; import techreborn.init.ModItems; -import techreborn.init.ModSounds; import techreborn.lib.ModInfo; import techreborn.manual.loader.ManualLoader; import java.io.File; -import java.io.IOException; public class ClientProxy extends CommonProxy { @@ -169,4 +161,21 @@ public class ClientProxy extends CommonProxy } }); } + + @Override + public void registerCustomBlockSateLocation(Block block, String resourceLocation) { + super.registerCustomBlockSateLocation(block, resourceLocation); + ModelLoader.setCustomStateMapper(block, new DefaultStateMapper() + { + @Override + protected ModelResourceLocation getModelResourceLocation(IBlockState state) + { + String resourceDomain = Block.REGISTRY.getNameForObject(state.getBlock()).getResourceDomain(); + String propertyString = getPropertyString(state.getProperties()); + return new ModelResourceLocation(resourceDomain + ':' + resourceLocation, propertyString); + } + }); + String resourceDomain = Block.REGISTRY.getNameForObject(block).getResourceDomain(); + ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(block), 0, new ModelResourceLocation(resourceDomain + ':' + resourceLocation, "inventory")); + } } diff --git a/src/main/java/techreborn/proxies/CommonProxy.java b/src/main/java/techreborn/proxies/CommonProxy.java index 3fb6d35b6..3c33a0878 100644 --- a/src/main/java/techreborn/proxies/CommonProxy.java +++ b/src/main/java/techreborn/proxies/CommonProxy.java @@ -38,4 +38,8 @@ public class CommonProxy implements ICompatModule } + public void registerCustomBlockSateLocation(Block block, String name) { + + } + } diff --git a/src/main/java/techreborn/world/TechRebornWorldGen.java b/src/main/java/techreborn/world/TechRebornWorldGen.java index 234de869f..82c28747e 100644 --- a/src/main/java/techreborn/world/TechRebornWorldGen.java +++ b/src/main/java/techreborn/world/TechRebornWorldGen.java @@ -227,7 +227,12 @@ public class TechRebornWorldGen implements IWorldGenerator yPos = 10 + random.nextInt(ore.maxYHeight - ore.minYHeight); zPos = chunkZ * 16 + random.nextInt(16); BlockPos pos = new BlockPos(xPos, yPos, zPos); - worldGenMinable.generate(world, random, pos); + try{ + worldGenMinable.generate(world, random, pos); + } catch (ArrayIndexOutOfBoundsException e){ + Core.logHelper.error("Something bad is happening during world gen the ore " + ore.blockNiceName + " caused a crash when generating. Report this to the TechReborn devs with a log"); + } + } } } diff --git a/src/main/resources/assets/techreborn/blockstates/techreborn.centrifuge.json b/src/main/resources/assets/techreborn/blockstates/machines/centrifuge.json similarity index 100% rename from src/main/resources/assets/techreborn/blockstates/techreborn.centrifuge.json rename to src/main/resources/assets/techreborn/blockstates/machines/centrifuge.json