Merge branch '1.9' into 1.9-BTM

This commit is contained in:
modmuss50 2016-05-16 16:21:33 +01:00
commit 4a1226322e
47 changed files with 266 additions and 225 deletions

View file

@ -51,7 +51,7 @@ configurations {
} }
version = "1.1.0" version = "1.1.1"
def ENV = System.getenv() def ENV = System.getenv()
if (ENV.BUILD_NUMBER) { if (ENV.BUILD_NUMBER) {

View file

@ -35,7 +35,6 @@ import techreborn.events.OreUnifier;
import techreborn.events.TRTickHandler; import techreborn.events.TRTickHandler;
import techreborn.init.*; import techreborn.init.*;
import techreborn.lib.ModInfo; import techreborn.lib.ModInfo;
import techreborn.manual.loader.ManualLoader;
import techreborn.packets.PacketAesu; import techreborn.packets.PacketAesu;
import techreborn.packets.PacketIdsu; import techreborn.packets.PacketIdsu;
import techreborn.proxies.CommonProxy; import techreborn.proxies.CommonProxy;
@ -45,7 +44,7 @@ import techreborn.world.TechRebornWorldGen;
import java.io.File; import java.io.File;
@Mod(modid = ModInfo.MOD_ID, name = ModInfo.MOD_NAME, version = ModInfo.MOD_VERSION, dependencies = ModInfo.MOD_DEPENDENCUIES, guiFactory = ModInfo.GUI_FACTORY_CLASS, acceptedMinecraftVersions = "[1.9]") @Mod(modid = ModInfo.MOD_ID, name = ModInfo.MOD_NAME, version = ModInfo.MOD_VERSION, dependencies = ModInfo.MOD_DEPENDENCIES, guiFactory = ModInfo.GUI_FACTORY_CLASS, acceptedMinecraftVersions = "[1.9]")
public class Core public class Core
{ {
public static ConfigTechReborn config; public static ConfigTechReborn config;

View file

@ -6,6 +6,8 @@ import techreborn.api.recipe.BaseRecipe;
public class ExtractorRecipe extends BaseRecipe { public class ExtractorRecipe extends BaseRecipe {
boolean useOreDic = true;
public ExtractorRecipe(ItemStack input1, ItemStack output1, int tickTime, int euPerTick) { public ExtractorRecipe(ItemStack input1, ItemStack output1, int tickTime, int euPerTick) {
super(Reference.extractorRecipe, tickTime, euPerTick); super(Reference.extractorRecipe, tickTime, euPerTick);
if (input1 != null) if (input1 != null)
@ -13,9 +15,19 @@ public class ExtractorRecipe extends BaseRecipe {
if (output1 != null) if (output1 != null)
addOutput(output1); addOutput(output1);
} }
public ExtractorRecipe(ItemStack input1, ItemStack output1, int tickTime, int euPerTick, boolean useOreDic) {
this(input1, output1, tickTime, euPerTick);
this.useOreDic = useOreDic;
}
@Override @Override
public String getUserFreindlyName() { public String getUserFreindlyName() {
return "Extractor"; return "Extractor";
} }
@Override
public boolean useOreDic() {
return useOreDic;
}
} }

View file

@ -1,8 +1,8 @@
package techreborn.blocks; package techreborn.blocks;
import com.google.common.collect.Lists;
import me.modmuss50.jsonDestroyer.api.ITexturedBlock; import me.modmuss50.jsonDestroyer.api.ITexturedBlock;
import net.minecraft.block.material.Material; import net.minecraft.block.material.Material;
import net.minecraft.block.properties.PropertyInteger;
import net.minecraft.block.state.BlockStateContainer; import net.minecraft.block.state.BlockStateContainer;
import net.minecraft.block.state.IBlockState; import net.minecraft.block.state.IBlockState;
import net.minecraft.creativetab.CreativeTabs; import net.minecraft.creativetab.CreativeTabs;
@ -18,8 +18,11 @@ import net.minecraft.world.World;
import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly; import net.minecraftforge.fml.relauncher.SideOnly;
import reborncore.common.BaseBlock; import reborncore.common.BaseBlock;
import reborncore.common.blocks.PropertyString;
import reborncore.common.util.ArrayUtils;
import reborncore.common.util.OreDrop; import reborncore.common.util.OreDrop;
import reborncore.common.util.OreDropSet; import reborncore.common.util.OreDropSet;
import reborncore.common.util.StringUtils;
import techreborn.client.TechRebornCreativeTabMisc; import techreborn.client.TechRebornCreativeTabMisc;
import techreborn.config.ConfigTechReborn; import techreborn.config.ConfigTechReborn;
import techreborn.init.ModBlocks; import techreborn.init.ModBlocks;
@ -34,10 +37,11 @@ import java.util.Random;
public class BlockOre extends BaseBlock implements ITexturedBlock, IOreNameProvider public class BlockOre extends BaseBlock implements ITexturedBlock, IOreNameProvider
{ {
public static final String[] types = new String[] { "Galena", "Iridium", "Ruby", "Sapphire", "Bauxite", "Pyrite", public static final String[] ores = new String[] { "galena", "iridium", "ruby", "sapphire", "bauxite", "pyrite",
"Cinnabar", "Sphalerite", "Tungston", "Sheldonite", "Peridot", "Sodalite", "cinnabar", "sphalerite", "tungston", "sheldonite", "peridot", "sodalite",
"Lead", "Silver" }; "lead", "silver" };
public PropertyInteger METADATA; static List<String> oreNamesList = Lists.newArrayList(ArrayUtils.arrayToLowercase(ores));
public PropertyString VARIANTS = new PropertyString("type", oreNamesList);
public BlockOre(Material material) public BlockOre(Material material)
{ {
@ -46,14 +50,14 @@ public class BlockOre extends BaseBlock implements ITexturedBlock, IOreNameProvi
setCreativeTab(TechRebornCreativeTabMisc.instance); setCreativeTab(TechRebornCreativeTabMisc.instance);
setHardness(2.0f); setHardness(2.0f);
setHarvestLevel("pickaxe", 2); setHarvestLevel("pickaxe", 2);
this.setDefaultState(this.getDefaultState().withProperty(METADATA, 0)); this.setDefaultState(this.getStateFromMeta(0));
} }
public static ItemStack getOreByName(String name, int count) public static ItemStack getOreByName(String name, int count)
{ {
for (int i = 0; i < types.length; i++) for (int i = 0; i < ores.length; i++)
{ {
if (types[i].equalsIgnoreCase(name)) if (ores[i].equalsIgnoreCase(name))
{ {
return new ItemStack(ModBlocks.ore, count, i); return new ItemStack(ModBlocks.ore, count, i);
} }
@ -69,9 +73,9 @@ public class BlockOre extends BaseBlock implements ITexturedBlock, IOreNameProvi
public IBlockState getBlockStateFromName(String name) public IBlockState getBlockStateFromName(String name)
{ {
int index = -1; int index = -1;
for (int i = 0; i < types.length; i++) for (int i = 0; i < ores.length; i++)
{ {
if (types[i].equalsIgnoreCase(name)) if (ores[i].equalsIgnoreCase(name))
{ {
index = i; index = i;
break; break;
@ -87,10 +91,11 @@ public class BlockOre extends BaseBlock implements ITexturedBlock, IOreNameProvi
@Deprecated @Deprecated
public ArrayList<ItemStack> getDrops(IBlockAccess world, BlockPos pos, IBlockState state, int fortune) public ArrayList<ItemStack> getDrops(IBlockAccess world, BlockPos pos, IBlockState state, int fortune)
{ {
int metadata = getMetaFromState(state); String variant = state.getValue(VARIANTS);
int meta = getMetaFromState(state);
Random random = new Random(); Random random = new Random();
// Ruby // Ruby
if (metadata == 2) if (variant.equals("Ruby"))
{ {
OreDrop ruby = new OreDrop(ItemGems.getGemByName("ruby"), OreDrop ruby = new OreDrop(ItemGems.getGemByName("ruby"),
ConfigTechReborn.FortuneSecondaryOreMultiplierPerLevel); ConfigTechReborn.FortuneSecondaryOreMultiplierPerLevel);
@ -100,7 +105,7 @@ public class BlockOre extends BaseBlock implements ITexturedBlock, IOreNameProvi
} }
// Sapphire // Sapphire
if (metadata == 3) if (variant.equals("Sapphire"))
{ {
OreDrop sapphire = new OreDrop(ItemGems.getGemByName("sapphire"), OreDrop sapphire = new OreDrop(ItemGems.getGemByName("sapphire"),
ConfigTechReborn.FortuneSecondaryOreMultiplierPerLevel); ConfigTechReborn.FortuneSecondaryOreMultiplierPerLevel);
@ -110,7 +115,7 @@ public class BlockOre extends BaseBlock implements ITexturedBlock, IOreNameProvi
} }
// Pyrite // Pyrite
if (metadata == 5) if (variant.equals("Pyrite"))
{ {
OreDrop pyriteDust = new OreDrop(ItemDusts.getDustByName("pyrite"), OreDrop pyriteDust = new OreDrop(ItemDusts.getDustByName("pyrite"),
ConfigTechReborn.FortuneSecondaryOreMultiplierPerLevel); ConfigTechReborn.FortuneSecondaryOreMultiplierPerLevel);
@ -119,7 +124,7 @@ public class BlockOre extends BaseBlock implements ITexturedBlock, IOreNameProvi
} }
// Sodalite // Sodalite
if (metadata == 11) if (variant.equals("Sodalite"))
{ {
OreDrop sodalite = new OreDrop(ItemDusts.getDustByName("sodalite", 6), OreDrop sodalite = new OreDrop(ItemDusts.getDustByName("sodalite", 6),
ConfigTechReborn.FortuneSecondaryOreMultiplierPerLevel); ConfigTechReborn.FortuneSecondaryOreMultiplierPerLevel);
@ -129,7 +134,7 @@ public class BlockOre extends BaseBlock implements ITexturedBlock, IOreNameProvi
} }
// Cinnabar // Cinnabar
if (metadata == 6) if (variant.equals("Cinnabar"))
{ {
OreDrop cinnabar = new OreDrop(ItemDusts.getDustByName("cinnabar"), OreDrop cinnabar = new OreDrop(ItemDusts.getDustByName("cinnabar"),
ConfigTechReborn.FortuneSecondaryOreMultiplierPerLevel); ConfigTechReborn.FortuneSecondaryOreMultiplierPerLevel);
@ -139,7 +144,7 @@ public class BlockOre extends BaseBlock implements ITexturedBlock, IOreNameProvi
} }
// Sphalerite 1, 1/8 yellow garnet // Sphalerite 1, 1/8 yellow garnet
if (metadata == 7) if (variant.equals("Sphalerite"))
{ {
OreDrop sphalerite = new OreDrop(ItemDusts.getDustByName("sphalerite"), OreDrop sphalerite = new OreDrop(ItemDusts.getDustByName("sphalerite"),
ConfigTechReborn.FortuneSecondaryOreMultiplierPerLevel); ConfigTechReborn.FortuneSecondaryOreMultiplierPerLevel);
@ -149,7 +154,7 @@ public class BlockOre extends BaseBlock implements ITexturedBlock, IOreNameProvi
} }
ArrayList<ItemStack> block = new ArrayList<>(); ArrayList<ItemStack> block = new ArrayList<>();
block.add(new ItemStack(Item.getItemFromBlock(this), 1, metadata)); block.add(new ItemStack(Item.getItemFromBlock(this), 1, meta));
return block; return block;
} }
@ -163,7 +168,7 @@ public class BlockOre extends BaseBlock implements ITexturedBlock, IOreNameProvi
@SideOnly(Side.CLIENT) @SideOnly(Side.CLIENT)
public void getSubBlocks(Item item, CreativeTabs creativeTabs, List list) public void getSubBlocks(Item item, CreativeTabs creativeTabs, List list)
{ {
for (int meta = 0; meta < types.length; meta++) for (int meta = 0; meta < ores.length; meta++)
{ {
list.add(new ItemStack(item, 1, meta)); list.add(new ItemStack(item, 1, meta));
} }
@ -173,60 +178,62 @@ public class BlockOre extends BaseBlock implements ITexturedBlock, IOreNameProvi
public ItemStack getPickBlock(IBlockState state, RayTraceResult target, World world, BlockPos pos, public ItemStack getPickBlock(IBlockState state, RayTraceResult target, World world, BlockPos pos,
EntityPlayer player) EntityPlayer player)
{ {
return super.getPickBlock(state, target, world, pos, player); return new ItemStack(this,1, getMetaFromState(state));
} }
@Override // @Override
public int damageDropped(IBlockState state) // public int damageDropped(IBlockState state)
{ // {
int meta = getMetaFromState(state); // int meta = getMetaFromState(state);
if (meta == 2) // if (meta == 2)
{ // {
return 0; // return 0;
} else if (meta == 3) // } else if (meta == 3)
{ // {
return 1; // return 1;
} else if (meta == 5) // } else if (meta == 5)
{ // {
return 60; // return 60;
} // }
return meta; // return meta;
} // }
@Override @Override
public String getTextureNameFromState(IBlockState BlockStateContainer, EnumFacing facing) public String getTextureNameFromState(IBlockState BlockStateContainer, EnumFacing facing)
{ {
return "techreborn:blocks/ore/ore" + types[getMetaFromState(BlockStateContainer)]; return "techreborn:blocks/ore/ore" + StringUtils.toFirstCapital(ores[getMetaFromState(BlockStateContainer)]);
} }
@Override @Override
public int amountOfStates() public int amountOfStates()
{ {
return types.length; return ores.length;
} }
@Override @Override
public IBlockState getStateFromMeta(int meta) public int damageDropped(IBlockState state) {
{ return getMetaFromState(state);
return this.getDefaultState().withProperty(METADATA, meta);
} }
@Override @Override
public int getMetaFromState(IBlockState state) public IBlockState getStateFromMeta(int meta) {
{ return getBlockState().getBaseState().withProperty(VARIANTS, oreNamesList.get(meta));
return state.getValue(METADATA); }
@Override
public int getMetaFromState(IBlockState state) {
return oreNamesList.indexOf(state.getValue(VARIANTS));
} }
protected BlockStateContainer createBlockState() protected BlockStateContainer createBlockState()
{ {
VARIANTS = new PropertyString("type", oreNamesList);
METADATA = PropertyInteger.create("type", 0, types.length - 1); return new BlockStateContainer(this, VARIANTS);
return new BlockStateContainer(this, METADATA);
} }
@Override @Override
public String getUserLoclisedName(IBlockState state) public String getUserLoclisedName(IBlockState state)
{ {
return types[state.getValue(METADATA)]; return StringUtils.toFirstCapital(oreNamesList.get(getMetaFromState(state)));
} }
} }

View file

@ -3,6 +3,7 @@ package techreborn.blocks;
import java.security.InvalidParameterException; import java.security.InvalidParameterException;
import java.util.List; import java.util.List;
import com.google.common.collect.Lists;
import me.modmuss50.jsonDestroyer.api.ITexturedBlock; import me.modmuss50.jsonDestroyer.api.ITexturedBlock;
import net.minecraft.block.material.Material; import net.minecraft.block.material.Material;
import net.minecraft.block.properties.PropertyInteger; import net.minecraft.block.properties.PropertyInteger;
@ -19,6 +20,9 @@ import net.minecraft.world.World;
import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly; import net.minecraftforge.fml.relauncher.SideOnly;
import reborncore.common.BaseBlock; import reborncore.common.BaseBlock;
import reborncore.common.blocks.PropertyString;
import reborncore.common.util.ArrayUtils;
import reborncore.common.util.StringUtils;
import techreborn.client.TechRebornCreativeTabMisc; import techreborn.client.TechRebornCreativeTabMisc;
import techreborn.init.ModBlocks; import techreborn.init.ModBlocks;
import techreborn.world.config.IOreNameProvider; import techreborn.world.config.IOreNameProvider;
@ -26,8 +30,9 @@ import techreborn.world.config.IOreNameProvider;
public class BlockOre2 extends BaseBlock implements ITexturedBlock, IOreNameProvider public class BlockOre2 extends BaseBlock implements ITexturedBlock, IOreNameProvider
{ {
public static final String[] types = new String[] { "Copper", "Tin" }; public static final String[] ores = new String[] { "copper", "tin"};
public PropertyInteger METADATA; static List<String> oreNamesList = Lists.newArrayList(ArrayUtils.arrayToLowercase(ores));
public PropertyString VARIANTS = new PropertyString("type", oreNamesList);
public BlockOre2(Material material) public BlockOre2(Material material)
{ {
@ -36,14 +41,14 @@ public class BlockOre2 extends BaseBlock implements ITexturedBlock, IOreNameProv
setCreativeTab(TechRebornCreativeTabMisc.instance); setCreativeTab(TechRebornCreativeTabMisc.instance);
setHardness(2.0f); setHardness(2.0f);
setHarvestLevel("pickaxe", 1); setHarvestLevel("pickaxe", 1);
this.setDefaultState(this.blockState.getBaseState().withProperty(METADATA, 0)); this.setDefaultState(this.getStateFromMeta(0));
} }
public static ItemStack getOreByName(String name, int count) public static ItemStack getOreByName(String name, int count)
{ {
for (int i = 0; i < types.length; i++) for (int i = 0; i < ores.length; i++)
{ {
if (types[i].equalsIgnoreCase(name)) if (ores[i].equalsIgnoreCase(name))
{ {
return new ItemStack(ModBlocks.ore2, count, i); return new ItemStack(ModBlocks.ore2, count, i);
} }
@ -59,9 +64,9 @@ public class BlockOre2 extends BaseBlock implements ITexturedBlock, IOreNameProv
public IBlockState getBlockStateFromName(String name) public IBlockState getBlockStateFromName(String name)
{ {
int index = -1; int index = -1;
for (int i = 0; i < types.length; i++) for (int i = 0; i < ores.length; i++)
{ {
if (types[i].equalsIgnoreCase(name)) if (ores[i].equalsIgnoreCase(name))
{ {
index = i; index = i;
break; break;
@ -69,7 +74,7 @@ public class BlockOre2 extends BaseBlock implements ITexturedBlock, IOreNameProv
} }
if (index == -1) if (index == -1)
{ {
throw new InvalidParameterException("The ore block " + name + " could not be found."); return ModBlocks.ore2.getBlockStateFromName(name);
} }
return getStateFromMeta(index); return getStateFromMeta(index);
} }
@ -84,7 +89,7 @@ public class BlockOre2 extends BaseBlock implements ITexturedBlock, IOreNameProv
@SideOnly(Side.CLIENT) @SideOnly(Side.CLIENT)
public void getSubBlocks(Item item, CreativeTabs creativeTabs, List list) public void getSubBlocks(Item item, CreativeTabs creativeTabs, List list)
{ {
for (int meta = 0; meta < types.length; meta++) for (int meta = 0; meta < ores.length; meta++)
{ {
list.add(new ItemStack(item, 1, meta)); list.add(new ItemStack(item, 1, meta));
} }
@ -94,50 +99,62 @@ public class BlockOre2 extends BaseBlock implements ITexturedBlock, IOreNameProv
public ItemStack getPickBlock(IBlockState state, RayTraceResult target, World world, BlockPos pos, public ItemStack getPickBlock(IBlockState state, RayTraceResult target, World world, BlockPos pos,
EntityPlayer player) EntityPlayer player)
{ {
return super.getPickBlock(state, target, world, pos, player); return new ItemStack(this,1, getMetaFromState(state));
} }
@Override // @Override
public int damageDropped(IBlockState state) // public int damageDropped(IBlockState state)
{ // {
int meta = getMetaFromState(state); // int meta = getMetaFromState(state);
return meta; // if (meta == 2)
} // {
// return 0;
// } else if (meta == 3)
// {
// return 1;
// } else if (meta == 5)
// {
// return 60;
// }
// return meta;
// }
@Override @Override
public String getTextureNameFromState(IBlockState BlockStateContainer, EnumFacing facing) public String getTextureNameFromState(IBlockState BlockStateContainer, EnumFacing facing)
{ {
return "techreborn:blocks/ore/ore" + types[getMetaFromState(BlockStateContainer)]; return "techreborn:blocks/ore/ore" + StringUtils.toFirstCapital(ores[getMetaFromState(BlockStateContainer)]);
} }
@Override @Override
public int amountOfStates() public int amountOfStates()
{ {
return types.length; return ores.length;
} }
@Override @Override
public IBlockState getStateFromMeta(int meta) public int damageDropped(IBlockState state) {
{ return getMetaFromState(state);
return this.getDefaultState().withProperty(METADATA, meta);
} }
@Override @Override
public int getMetaFromState(IBlockState state) public IBlockState getStateFromMeta(int meta) {
{ return getBlockState().getBaseState().withProperty(VARIANTS, oreNamesList.get(meta));
return state.getValue(METADATA); }
@Override
public int getMetaFromState(IBlockState state) {
return oreNamesList.indexOf(state.getValue(VARIANTS));
} }
protected BlockStateContainer createBlockState() protected BlockStateContainer createBlockState()
{ {
VARIANTS = new PropertyString("type", oreNamesList);
METADATA = PropertyInteger.create("type", 0, types.length - 1); return new BlockStateContainer(this, VARIANTS);
return new BlockStateContainer(this, METADATA);
} }
@Override @Override
public String getUserLoclisedName(IBlockState state) public String getUserLoclisedName(IBlockState state)
{ {
return types[state.getValue(METADATA)]; return StringUtils.toFirstCapital(oreNamesList.get(getMetaFromState(state)));
} }
} }

View file

@ -58,13 +58,13 @@ public class RenderCablePart implements IBakedModel
} }
if (state.getValue(CableMultipart.NORTH)) if (state.getValue(CableMultipart.NORTH))
{ {
BakedModelUtils.addCubeToList(new Vecs3dCube(thickness, thickness, 0.0, lastThickness, lastThickness, thickness), list, BakedModelUtils.addCubeToList(new Vecs3dCube(0.0, thickness, thickness, thickness, lastThickness, lastThickness), list,
face, ModelRotation.X0_Y0, texture, EnumFacing.NORTH, faceBakery); face, ModelRotation.X0_Y90, texture, EnumFacing.NORTH, faceBakery);
} }
if (state.getValue(CableMultipart.SOUTH)) if (state.getValue(CableMultipart.SOUTH))
{ {
BakedModelUtils.addCubeToList(new Vecs3dCube(thickness, thickness, lastThickness, lastThickness, lastThickness, 16.0), BakedModelUtils.addCubeToList(new Vecs3dCube(0.0, thickness, thickness, thickness, lastThickness, lastThickness),
list, face, ModelRotation.X0_Y0, texture, EnumFacing.SOUTH, faceBakery); list, face, ModelRotation.X0_Y270, texture, EnumFacing.SOUTH, faceBakery);
} }
if (state.getValue(CableMultipart.EAST)) if (state.getValue(CableMultipart.EAST))
{ {

View file

@ -13,6 +13,7 @@ import org.apache.commons.lang3.ArrayUtils;
import reborncore.api.recipe.RecipeHandler; import reborncore.api.recipe.RecipeHandler;
import reborncore.common.util.CraftingHelper; import reborncore.common.util.CraftingHelper;
import reborncore.common.util.OreUtil; import reborncore.common.util.OreUtil;
import reborncore.common.util.StringUtils;
import techreborn.Core; import techreborn.Core;
import techreborn.api.ScrapboxList; import techreborn.api.ScrapboxList;
import techreborn.api.TechRebornAPI; import techreborn.api.TechRebornAPI;
@ -40,6 +41,18 @@ public class ModRecipes
public static ItemStack dyes = new ItemStack(Items.DYE, 1, OreDictionary.WILDCARD_VALUE); public static ItemStack dyes = new ItemStack(Items.DYE, 1, OreDictionary.WILDCARD_VALUE);
public static Item hammer = ModItems.hammer; public static Item hammer = ModItems.hammer;
public static Item ironDrill = TechRebornAPI.recipeCompact.getItem("miningDrill").getItem();
public static ItemStack ironDrillStack = new ItemStack(ironDrill, 1, OreDictionary.WILDCARD_VALUE);
public static Item diamondDrill = ModItems.diamondDrill;
public static ItemStack diamondDrillStack = new ItemStack(diamondDrill, 1, OreDictionary.WILDCARD_VALUE);
public static Item ironChainsaw = ModItems.ironChainsaw;
public static ItemStack ironChainsawStack = new ItemStack(ironChainsaw, 1, OreDictionary.WILDCARD_VALUE);
public static Item diamondChainsaw = ModItems.diamondChainsaw;
public static ItemStack diamondChainsawStack = new ItemStack(diamondChainsaw, 1, OreDictionary.WILDCARD_VALUE);
public static void init() public static void init()
{ {
addShapelessRecipes(); addShapelessRecipes();
@ -335,7 +348,7 @@ public class ModRecipes
new ExtractorRecipe(ItemParts.getPartByName("rubberSap"), ItemParts.getPartByName("rubber", 3), 400, new ExtractorRecipe(ItemParts.getPartByName("rubberSap"), ItemParts.getPartByName("rubber", 3), 400,
20)); 20));
RecipeHandler.addRecipe( RecipeHandler.addRecipe(
new ExtractorRecipe(new ItemStack(ModBlocks.rubberLog), ItemParts.getPartByName("rubber"), 400, 20)); new ExtractorRecipe(new ItemStack(ModBlocks.rubberLog), ItemParts.getPartByName("rubber"), 400, 20, false));
} }
static void addIc2ReplacementReicpes() static void addIc2ReplacementReicpes()
@ -746,7 +759,7 @@ public class ModRecipes
{ {
CraftingHelper.addShapedOreRecipe(ItemParts.getPartByName(part), " O ", "OIO", " O ", 'I', CraftingHelper.addShapedOreRecipe(ItemParts.getPartByName(part), " O ", "OIO", " O ", 'I',
new ItemStack(Items.IRON_INGOT), 'O', new ItemStack(Items.IRON_INGOT), 'O',
"ingot" + capitalizeFirstLetter(part.replace("Gear", ""))); "ingot" + StringUtils.toFirstCapital(part.replace("Gear", "")));
} }
} }
@ -851,14 +864,14 @@ public class ModRecipes
'C', ItemParts.getPartByName("CoolantSimple"), 'S', ItemCells.getCellByName("sodium"), 'P', 'C', ItemParts.getPartByName("CoolantSimple"), 'S', ItemCells.getCellByName("sodium"), 'P',
ItemCells.getCellByName("potassium")); ItemCells.getCellByName("potassium"));
Core.logHelper.info("Shapped Recipes Added"); CraftingHelper
} .addShapedOreRecipe(new ItemStack(ModItems.advancedDrill), "ODO", "AOA", 'O', ItemUpgrades.getUpgradeByName("Overclock"),
'D', diamondDrillStack, 'A', "circuitAdvanced");
CraftingHelper
.addShapedOreRecipe(new ItemStack(ModItems.advancedChainsaw), "ODO", "AOA", 'O', ItemUpgrades.getUpgradeByName("Overclock"),
'D', diamondChainsawStack, 'A', "circuitAdvanced");
public static String capitalizeFirstLetter(String original) Core.logHelper.info("Shapped Recipes Added");
{
if (original.length() == 0)
return original;
return original.substring(0, 1).toUpperCase() + original.substring(1);
} }
static void addShapelessRecipes() static void addShapelessRecipes()
@ -1157,8 +1170,8 @@ public class ModRecipes
if (OreUtil.hasBlock(ore) && OreUtil.hasPlate(ore)) if (OreUtil.hasBlock(ore) && OreUtil.hasPlate(ore))
{ {
RecipeHandler.addRecipe( RecipeHandler.addRecipe(
new PlateCuttingMachineRecipe(OreUtil.getStackFromName("block" + capitalizeFirstLetter(ore)), new PlateCuttingMachineRecipe(OreUtil.getStackFromName("block" + StringUtils.toFirstCapital(ore)),
OreUtil.getStackFromName("plate" + capitalizeFirstLetter(ore), 9), 200, 16)); OreUtil.getStackFromName("plate" + StringUtils.toFirstCapital(ore), 9), 200, 16));
} }
} }
@ -1487,17 +1500,17 @@ public class ModRecipes
if (OreUtil.hasIngot(ore) && OreUtil.hasDustSmall(ore) && OreUtil.hasBlock(ore)) if (OreUtil.hasIngot(ore) && OreUtil.hasDustSmall(ore) && OreUtil.hasBlock(ore))
{ {
RecipeHandler.addRecipe( RecipeHandler.addRecipe(
new IndustrialGrinderRecipe(OreUtil.getStackFromName("block" + capitalizeFirstLetter(ore)), new IndustrialGrinderRecipe(OreUtil.getStackFromName("block" + StringUtils.toFirstCapital(ore)),
null, new FluidStack(FluidRegistry.WATER, 1000), null, new FluidStack(FluidRegistry.WATER, 1000),
OreUtil.getStackFromName("ingot" + capitalizeFirstLetter(ore)), OreUtil.getStackFromName("ingot" + StringUtils.toFirstCapital(ore)),
OreUtil.getStackFromName("dustSmall" + capitalizeFirstLetter(ore), 6), OreUtil.getStackFromName("dustSmall" + StringUtils.toFirstCapital(ore), 6),
OreUtil.getStackFromName("dustSmall" + capitalizeFirstLetter(ore), 2), null, 100, 120)); OreUtil.getStackFromName("dustSmall" + StringUtils.toFirstCapital(ore), 2), null, 100, 120));
RecipeHandler.addRecipe( RecipeHandler.addRecipe(
new IndustrialGrinderRecipe(OreUtil.getStackFromName("block" + capitalizeFirstLetter(ore)), new IndustrialGrinderRecipe(OreUtil.getStackFromName("block" + StringUtils.toFirstCapital(ore)),
new ItemStack(Items.WATER_BUCKET), null, new ItemStack(Items.WATER_BUCKET), null,
OreUtil.getStackFromName("ingot" + capitalizeFirstLetter(ore)), OreUtil.getStackFromName("ingot" + StringUtils.toFirstCapital(ore)),
OreUtil.getStackFromName("dustSmall" + capitalizeFirstLetter(ore), 6), OreUtil.getStackFromName("dustSmall" + StringUtils.toFirstCapital(ore), 6),
OreUtil.getStackFromName("dustSmall" + capitalizeFirstLetter(ore), 2), OreUtil.getStackFromName("dustSmall" + StringUtils.toFirstCapital(ore), 2),
new ItemStack(Items.BUCKET), 100, 120)); new ItemStack(Items.BUCKET), 100, 120));
} }
} }
@ -3319,7 +3332,7 @@ public class ModRecipes
if (ConfigTechReborn.ExpensiveDiamondDrill) if (ConfigTechReborn.ExpensiveDiamondDrill)
CraftingHelper CraftingHelper
.addShapedOreRecipe(TechRebornAPI.recipeCompact.getItem("diamondDrill"), " D ", "DBD", "TCT", 'D', .addShapedOreRecipe(TechRebornAPI.recipeCompact.getItem("diamondDrill"), " D ", "DBD", "TCT", 'D',
"gemDiamond", 'T', "ingotTitanium", 'B', drillStack, 'C', "diamondTR", 'T', "ingotTitanium", 'B', drillStack, 'C',
TechRebornAPI.recipeCompact.getItem("advancedCircuit")); TechRebornAPI.recipeCompact.getItem("advancedCircuit"));
if (ConfigTechReborn.ExpensiveSolar) if (ConfigTechReborn.ExpensiveSolar)

View file

@ -10,7 +10,7 @@ public class ItemBlockOre extends ItemBlockBase
public ItemBlockOre(Block block) public ItemBlockOre(Block block)
{ {
super(ModBlocks.ore, ModBlocks.ore, BlockOre.types); super(ModBlocks.ore, ModBlocks.ore, BlockOre.ores);
} }
} }

View file

@ -10,7 +10,7 @@ public class ItemBlockOre2 extends ItemBlockBase
public ItemBlockOre2(Block block) public ItemBlockOre2(Block block)
{ {
super(ModBlocks.ore2, ModBlocks.ore2, BlockOre2.types); super(ModBlocks.ore2, ModBlocks.ore2, BlockOre2.ores);
} }
} }

View file

@ -4,6 +4,7 @@ import me.modmuss50.jsonDestroyer.api.ITexturedItem;
import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound; import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.ActionResult;
import net.minecraft.util.EnumActionResult; import net.minecraft.util.EnumActionResult;
import net.minecraft.util.EnumFacing; import net.minecraft.util.EnumFacing;
import net.minecraft.util.EnumHand; import net.minecraft.util.EnumHand;
@ -50,11 +51,29 @@ public class ItemFrequencyTransmitter extends ItemTextureBase implements ITextur
TextFormatting.GRAY + " Z: " + TextFormatting.GRAY + " Z: " +
TextFormatting.GOLD + pos.getZ() + TextFormatting.GOLD + pos.getZ() +
TextFormatting.GRAY + " " + I18n.translateToLocal("techreborn.message.in") + " " + TextFormatting.GRAY + " " + I18n.translateToLocal("techreborn.message.in") + " " +
TextFormatting.GOLD + DimensionManager.getProviderType(world.provider.getDimension()).getName() + " ("+world.provider.getDimension()+")")); TextFormatting.GOLD + DimensionManager.getProviderType(world.provider.getDimension())
.getName() + " (" + world.provider.getDimension() + ")"));
} }
return EnumActionResult.SUCCESS; return EnumActionResult.SUCCESS;
} }
@Override public ActionResult<ItemStack> onItemRightClick(ItemStack stack, World world, EntityPlayer player,
EnumHand hand)
{
if (player.isSneaking())
{
stack.setTagCompound(null);
if (!world.isRemote && ConfigTechReborn.FreqTransmitterChat)
{
ChatUtils.sendNoSpamClient(new TextComponentString(
TextFormatting.GRAY + I18n.translateToLocal("techreborn.message.coordsHaveBeen") + " "
+ TextFormatting.GOLD + I18n.translateToLocal("techreborn.message.cleared")));
}
}
return new ActionResult<>(EnumActionResult.SUCCESS, stack);
}
public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean par4) public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean par4)
{ {
if (ConfigTechReborn.FreqTransmitterTooltip) if (ConfigTechReborn.FreqTransmitterTooltip)
@ -73,7 +92,7 @@ public class ItemFrequencyTransmitter extends ItemTextureBase implements ITextur
} else } else
{ {
list.add(TextFormatting.GRAY + "No Coordinates Set"); list.add(TextFormatting.GRAY + I18n.translateToLocal("techreborn.message.noCoordsSet"));
} }
} }
} }

View file

@ -1,8 +1,5 @@
package techreborn.items; package techreborn.items;
import java.security.InvalidParameterException;
import java.util.List;
import me.modmuss50.jsonDestroyer.api.ITexturedItem; import me.modmuss50.jsonDestroyer.api.ITexturedItem;
import net.minecraft.creativetab.CreativeTabs; import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayer;
@ -10,9 +7,12 @@ import net.minecraft.item.Item;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraft.util.text.TextFormatting; import net.minecraft.util.text.TextFormatting;
import reborncore.common.recipes.RecipeCrafter; import reborncore.common.recipes.RecipeCrafter;
import techreborn.utils.upgrade.IMachineUpgrade;
import techreborn.client.TechRebornCreativeTabMisc; import techreborn.client.TechRebornCreativeTabMisc;
import techreborn.init.ModItems; import techreborn.init.ModItems;
import techreborn.utils.upgrade.IMachineUpgrade;
import java.security.InvalidParameterException;
import java.util.List;
public class ItemUpgrades extends ItemTextureBase implements IMachineUpgrade, ITexturedItem public class ItemUpgrades extends ItemTextureBase implements IMachineUpgrade, ITexturedItem
{ {
@ -93,6 +93,8 @@ public class ItemUpgrades extends ItemTextureBase implements IMachineUpgrade, IT
public void addInformation(ItemStack stack, EntityPlayer playerIn, List<String> tooltip, boolean advanced) public void addInformation(ItemStack stack, EntityPlayer playerIn, List<String> tooltip, boolean advanced)
{ {
tooltip.add(TextFormatting.RED + "WIP Coming Soon"); tooltip.add(TextFormatting.RED + "WIP Coming Soon");
tooltip.add(TextFormatting.RED + "Upgrades DO NOT function!");
tooltip.add(TextFormatting.RED + "Currently only a crafting ingredient");
} }
@Override @Override

View file

@ -1,15 +1,8 @@
package techreborn.items.tools; package techreborn.items.tools;
import java.util.List;
import net.minecraft.block.state.IBlockState; import net.minecraft.block.state.IBlockState;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.Items; import net.minecraft.init.Items;
import net.minecraft.item.ItemStack;
import net.minecraft.util.text.TextFormatting;
import techreborn.config.ConfigTechReborn; import techreborn.config.ConfigTechReborn;
import net.minecraft.item.Item.ToolMaterial;
public class ItemAdvancedChainsaw extends ItemChainsaw public class ItemAdvancedChainsaw extends ItemChainsaw
{ {
@ -37,10 +30,4 @@ public class ItemAdvancedChainsaw extends ItemChainsaw
{ {
return 1; return 1;
} }
@Override
public void addInformation(ItemStack stack, EntityPlayer playerIn, List<String> tooltip, boolean advanced)
{
tooltip.add(TextFormatting.RED + "WIP Coming Soon");
}
} }

View file

@ -1,15 +1,8 @@
package techreborn.items.tools; package techreborn.items.tools;
import java.util.List;
import net.minecraft.block.state.IBlockState; import net.minecraft.block.state.IBlockState;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.Items; import net.minecraft.init.Items;
import net.minecraft.item.ItemStack;
import net.minecraft.util.text.TextFormatting;
import techreborn.config.ConfigTechReborn; import techreborn.config.ConfigTechReborn;
import net.minecraft.item.Item.ToolMaterial;
public class ItemAdvancedDrill extends ItemDrill public class ItemAdvancedDrill extends ItemDrill
{ {
@ -37,10 +30,4 @@ public class ItemAdvancedDrill extends ItemDrill
{ {
return 1; return 1;
} }
@Override
public void addInformation(ItemStack stack, EntityPlayer playerIn, List<String> tooltip, boolean advanced)
{
tooltip.add(TextFormatting.RED + "WIP Coming Soon");
}
} }

View file

@ -1,28 +1,32 @@
package techreborn.items.tools; package techreborn.items.tools;
import java.util.List;
import me.modmuss50.jsonDestroyer.api.ITexturedItem; import me.modmuss50.jsonDestroyer.api.ITexturedItem;
import net.minecraft.block.state.IBlockState; import net.minecraft.block.state.IBlockState;
import net.minecraft.client.renderer.block.model.ModelResourceLocation; import net.minecraft.client.renderer.block.model.ModelResourceLocation;
import net.minecraft.creativetab.CreativeTabs; import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.enchantment.Enchantment; import net.minecraft.enchantment.Enchantment;
import net.minecraft.enchantment.EnchantmentHelper;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.Enchantments;
import net.minecraft.init.Items; import net.minecraft.init.Items;
import net.minecraft.item.Item; import net.minecraft.item.Item;
import net.minecraft.item.ItemPickaxe; import net.minecraft.item.ItemPickaxe;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World;
import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly; import net.minecraftforge.fml.relauncher.SideOnly;
import reborncore.RebornCore; import reborncore.RebornCore;
import reborncore.api.power.IEnergyItemInfo; import reborncore.api.power.IEnergyItemInfo;
import reborncore.common.powerSystem.PoweredItem; import reborncore.common.powerSystem.PoweredItem;
import reborncore.common.util.Color;
import techreborn.client.TechRebornCreativeTab; import techreborn.client.TechRebornCreativeTab;
import techreborn.config.ConfigTechReborn; import techreborn.config.ConfigTechReborn;
import techreborn.lib.ModInfo; import techreborn.lib.ModInfo;
import net.minecraft.item.Item.ToolMaterial; import java.util.List;
import java.util.Random;
public class ItemRockCutter extends ItemPickaxe implements IEnergyItemInfo, ITexturedItem public class ItemRockCutter extends ItemPickaxe implements IEnergyItemInfo, ITexturedItem
{ {
@ -40,133 +44,119 @@ public class ItemRockCutter extends ItemPickaxe implements IEnergyItemInfo, ITex
RebornCore.jsonDestroyer.registerObject(this); RebornCore.jsonDestroyer.registerObject(this);
} }
@Override @Override public boolean onBlockDestroyed(ItemStack stack, World worldIn, IBlockState blockIn, BlockPos pos,
@SideOnly(Side.CLIENT) EntityLivingBase entityLiving)
public boolean hasEffect(ItemStack ist)
{ {
Random rand = new Random();
if (rand.nextInt(EnchantmentHelper.getEnchantmentLevel(Enchantments.UNBREAKING, stack) + 1) == 0)
{
PoweredItem.useEnergy(cost, stack);
}
return true; return true;
} }
@Override @Override public boolean canHarvestBlock(IBlockState state)
public void addInformation(ItemStack iS, EntityPlayer par2EntityPlayer, List par3List, boolean par4)
{
if (!iS.isItemEnchanted())
{
par3List.add(Color.WHITE + "Silk Touch I");
}
}
@Override
public boolean canHarvestBlock(IBlockState state)
{ {
if (Items.DIAMOND_PICKAXE.canHarvestBlock(state)) if (Items.DIAMOND_PICKAXE.canHarvestBlock(state))
{ {
// if (PoweredItem.canUseEnergy(cost, stack)) { return true;
// PoweredItem.useEnergy(cost, stack);
// return true;
// }
} }
return false; return false;
} }
@Override @Override public int getHarvestLevel(ItemStack stack, String toolClass)
public int getHarvestLevel(ItemStack stack, String toolClass) { {
if (!stack.isItemEnchanted()) {
if (!stack.isItemEnchanted())
{
stack.addEnchantment(Enchantment.getEnchantmentByID(33), 1); stack.addEnchantment(Enchantment.getEnchantmentByID(33), 1);
} }
return super.getHarvestLevel(stack, toolClass); return super.getHarvestLevel(stack, toolClass);
} }
@Override @Override public float getStrVsBlock(ItemStack stack, IBlockState state)
public float getStrVsBlock(ItemStack stack, IBlockState block) { {
if (!stack.isItemEnchanted()) { if (!PoweredItem.canUseEnergy(cost, stack))
stack.addEnchantment(Enchantment.getEnchantmentByID(33), 1); {
return 2F;
}else{
return Items.DIAMOND_PICKAXE.getStrVsBlock(stack, state);
} }
return super.getStrVsBlock(stack, block);
} }
@Override @Override public boolean isRepairable()
public boolean isRepairable()
{ {
return false; return false;
} }
// public void onCreated(ItemStack par1ItemStack, World par2World, @Override public void onCreated(ItemStack stack, World worldIn, EntityPlayer playerIn)
// EntityPlayer par3EntityPlayer) { {
// par1ItemStack.addEnchantment(Enchantment.silkTouch, 1); stack.addEnchantment(Enchantments.SILK_TOUCH, 1);
// } }
@Override @Override public double getMaxPower(ItemStack stack)
public double getMaxPower(ItemStack stack)
{ {
return maxCharge; return maxCharge;
} }
@Override @Override public boolean canAcceptEnergy(ItemStack stack)
public boolean canAcceptEnergy(ItemStack stack)
{ {
return true; return true;
} }
@Override @Override public boolean canProvideEnergy(ItemStack stack)
public boolean canProvideEnergy(ItemStack stack)
{ {
return false; return false;
} }
@Override @Override public double getMaxTransfer(ItemStack stack)
public double getMaxTransfer(ItemStack stack)
{ {
return 200; return 200;
} }
@Override @Override public int getStackTier(ItemStack stack)
public int getStackTier(ItemStack stack)
{ {
return 2; return 2;
} }
@SuppressWarnings({ "rawtypes", "unchecked" }) @SuppressWarnings({ "rawtypes", "unchecked" }) @SideOnly(Side.CLIENT) public void getSubItems(Item item,
@SideOnly(Side.CLIENT) CreativeTabs par2CreativeTabs, List itemList)
public void getSubItems(Item item, CreativeTabs par2CreativeTabs, List itemList)
{ {
ItemStack itemStack = new ItemStack(this, 1); ItemStack itemStack = new ItemStack(this, 1);
itemStack.addEnchantment(Enchantments.SILK_TOUCH, 1);
itemList.add(itemStack); itemList.add(itemStack);
ItemStack charged = new ItemStack(this, 1); ItemStack charged = new ItemStack(this, 1);
charged.addEnchantment(Enchantments.SILK_TOUCH, 1);
PoweredItem.setEnergy(getMaxPower(charged), charged); PoweredItem.setEnergy(getMaxPower(charged), charged);
itemList.add(charged); itemList.add(charged);
} }
@Override @Override public double getDurabilityForDisplay(ItemStack stack)
public double getDurabilityForDisplay(ItemStack stack)
{ {
double charge = (PoweredItem.getEnergy(stack) / getMaxPower(stack)); double charge = (PoweredItem.getEnergy(stack) / getMaxPower(stack));
return 1 - charge; return 1 - charge;
} }
@Override @Override public boolean showDurabilityBar(ItemStack stack)
public boolean showDurabilityBar(ItemStack stack)
{ {
return true; return true;
} }
@Override @Override public String getTextureName(int damage)
public String getTextureName(int damage)
{ {
return "techreborn:items/tool/rockcutter"; return "techreborn:items/tool/rockcutter";
} }
@Override @Override public int getMaxMeta()
public int getMaxMeta()
{ {
return 1; return 1;
} }
@Override @Override @SideOnly(Side.CLIENT) public ModelResourceLocation getModel(ItemStack stack, EntityPlayer player,
@SideOnly(Side.CLIENT) int useRemaining)
public ModelResourceLocation getModel(ItemStack stack, EntityPlayer player, int useRemaining)
{ {
return new ModelResourceLocation(ModInfo.MOD_ID + ":" + getUnlocalizedName(stack).substring(5), "inventory"); return new ModelResourceLocation(ModInfo.MOD_ID + ":" + getUnlocalizedName(stack).substring(5), "inventory");
} }

View file

@ -7,7 +7,7 @@ public class ModInfo implements IModInfo
public static final String MOD_NAME = "TechReborn"; public static final String MOD_NAME = "TechReborn";
public static final String MOD_ID = "techreborn"; public static final String MOD_ID = "techreborn";
public static final String MOD_VERSION = "@MODVERSION@"; public static final String MOD_VERSION = "@MODVERSION@";
public static final String MOD_DEPENDENCUIES = "required-after:Forge@[11.15.0.1609,);required-after:reborncore;after:JEI@[2.14,)"; public static final String MOD_DEPENDENCIES = "required-after:Forge@[11.15.0.1609,);required-after:reborncore;after:JEI@[2.14,)";
public static final String SERVER_PROXY_CLASS = "techreborn.proxies.CommonProxy"; public static final String SERVER_PROXY_CLASS = "techreborn.proxies.CommonProxy";
public static final String CLIENT_PROXY_CLASS = "techreborn.proxies.ClientProxy"; public static final String CLIENT_PROXY_CLASS = "techreborn.proxies.ClientProxy";
public static final String GUI_FACTORY_CLASS = "techreborn.config.TechRebornGUIFactory"; public static final String GUI_FACTORY_CLASS = "techreborn.config.TechRebornGUIFactory";
@ -33,7 +33,7 @@ public class ModInfo implements IModInfo
@Override @Override
public String MOD_DEPENDENCIES() public String MOD_DEPENDENCIES()
{ {
return MOD_DEPENDENCUIES; return MOD_DEPENDENCIES;
} }
public static final class Keys public static final class Keys

View file

@ -2,6 +2,7 @@ package techreborn.proxies;
import net.minecraft.client.renderer.ItemMeshDefinition; import net.minecraft.client.renderer.ItemMeshDefinition;
import net.minecraft.client.renderer.block.model.ModelResourceLocation; import net.minecraft.client.renderer.block.model.ModelResourceLocation;
import net.minecraft.client.renderer.block.statemap.StateMap;
import net.minecraft.client.renderer.entity.Render; import net.minecraft.client.renderer.entity.Render;
import net.minecraft.client.renderer.entity.RenderManager; import net.minecraft.client.renderer.entity.RenderManager;
import net.minecraft.item.Item; import net.minecraft.item.Item;
@ -19,6 +20,7 @@ import net.minecraftforge.fml.common.registry.GameData;
import reborncore.RebornCore; import reborncore.RebornCore;
import reborncore.client.multiblock.MultiblockRenderEvent; import reborncore.client.multiblock.MultiblockRenderEvent;
import reborncore.common.blocks.BlockMachineBase; import reborncore.common.blocks.BlockMachineBase;
import techreborn.blocks.BlockRubberLeaves;
import techreborn.client.ClientMultiBlocks; import techreborn.client.ClientMultiBlocks;
import techreborn.client.IconSupplier; import techreborn.client.IconSupplier;
import techreborn.client.RegisterItemJsons; import techreborn.client.RegisterItemJsons;
@ -28,6 +30,7 @@ import techreborn.client.hud.ChargeHud;
import techreborn.client.keybindings.KeyBindings; import techreborn.client.keybindings.KeyBindings;
import techreborn.client.render.entitys.RenderNukePrimed; import techreborn.client.render.entitys.RenderNukePrimed;
import techreborn.entitys.EntityNukePrimed; import techreborn.entitys.EntityNukePrimed;
import techreborn.init.ModBlocks;
import techreborn.init.ModSounds; import techreborn.init.ModSounds;
import techreborn.manual.loader.ManualLoader; import techreborn.manual.loader.ManualLoader;
@ -78,6 +81,8 @@ public class ClientProxy extends CommonProxy
// TODO FIX ME // TODO FIX ME
ClientRegistry.registerKeyBinding(KeyBindings.config); ClientRegistry.registerKeyBinding(KeyBindings.config);
ClientMultiBlocks.init(); ClientMultiBlocks.init();
StateMap rubberLeavesStateMap = new StateMap.Builder().ignore(BlockRubberLeaves.CHECK_DECAY, BlockRubberLeaves.DECAYABLE).build();
ModelLoader.setCustomStateMapper(ModBlocks.rubberLeaves, rubberLeavesStateMap);
} }
protected void registerItemModel(ItemStack item, String name) { protected void registerItemModel(ItemStack item, String name) {

View file

@ -63,8 +63,8 @@ tile.techreborn.electricfurnace.name=Electric Furnace
tile.techreborn.machineFrame.highlyAdvancedMachine.name=Highly Advanced Machine Block tile.techreborn.machineFrame.highlyAdvancedMachine.name=Highly Advanced Machine Block
tile.techreborn.machineFrame.advancedMachine.name=Advanced Machine Block tile.techreborn.machineFrame.advancedMachine.name=Advanced Machine Block
tile.techreborn.machineFrame.machine.name=Machine Block tile.techreborn.machineFrame.machine.name=Machine Block
tile.techreborn.ore2.Copper.name=Copper Ore tile.techreborn.ore2.copper.name=Copper Ore
tile.techreborn.ore2.Tin.name=Tin Ore tile.techreborn.ore2.tin.name=Tin Ore
tile.techreborn.storage2.copper.name=Copper Block tile.techreborn.storage2.copper.name=Copper Block
tile.techreborn.storage2.tin.name=Tin Block tile.techreborn.storage2.tin.name=Tin Block
tile.techreborn.solarpanel.name=Solar Panel tile.techreborn.solarpanel.name=Solar Panel
@ -92,22 +92,22 @@ tile.techreborn.rubbersapling.name=Rubber Sapling
tile.techreborn.ironfence.name=Iron Fence tile.techreborn.ironfence.name=Iron Fence
#Ores #Ores
tile.techreborn.ore.Galena.name=Galena Ore tile.techreborn.ore.galena.name=Galena Ore
tile.techreborn.ore.Iridium.name=Iridium Ore tile.techreborn.ore.iridium.name=Iridium Ore
tile.techreborn.ore.Ruby.name=Ruby Ore tile.techreborn.ore.ruby.name=Ruby Ore
tile.techreborn.ore.Sapphire.name=Sapphire Ore tile.techreborn.ore.sapphire.name=Sapphire Ore
tile.techreborn.ore.Bauxite.name=Bauxite Ore tile.techreborn.ore.bauxite.name=Bauxite Ore
tile.techreborn.ore.Pyrite.name=Pyrite Ore tile.techreborn.ore.pyrite.name=Pyrite Ore
tile.techreborn.ore.Cinnabar.name=Cinnabar Ore tile.techreborn.ore.cinnabar.name=Cinnabar Ore
tile.techreborn.ore.Sphalerite.name=Sphalerite Ore tile.techreborn.ore.sphalerite.name=Sphalerite Ore
tile.techreborn.ore.Tungston.name=Tungsten Ore tile.techreborn.ore.tungston.name=Tungsten Ore
tile.techreborn.ore.Sheldonite.name=Sheldonite Ore tile.techreborn.ore.sheldonite.name=Sheldonite Ore
tile.techreborn.ore.Peridot.name=Peridot Ore tile.techreborn.ore.peridot.name=Peridot Ore
tile.techreborn.ore.Sodalite.name=Sodalite Ore tile.techreborn.ore.sodalite.name=Sodalite Ore
tile.techreborn.ore.Tetrahedrite.name=Tetrahedrite Ore tile.techreborn.ore.tetrahedrite.name=Tetrahedrite Ore
tile.techreborn.ore.Cassiterite.name=Cassiterite Ore tile.techreborn.ore.cassiterite.name=Cassiterite Ore
tile.techreborn.ore.Lead.name=Lead Ore tile.techreborn.ore.lead.name=Lead Ore
tile.techreborn.ore.Silver.name=Silver Ore tile.techreborn.ore.silver.name=Silver Ore
#Storage #Storage
tile.techreborn.storage.silver.name=Block of Silver tile.techreborn.storage.silver.name=Block of Silver
@ -983,6 +983,9 @@ techreborn.recipe.implosioncompressor=Implosion Compressor
techreborn.message.missingmultiblock=Incomplete Multiblock techreborn.message.missingmultiblock=Incomplete Multiblock
techreborn.message.setTo=Set to techreborn.message.setTo=Set to
techreborn.message.in=in techreborn.message.in=in
techreborn.message.noCoordsSet=No Coordinates Set
techreborn.message.coordsHaveBeen=Coordinates have been
techreborn.message.cleared=Cleared
#Cables #Cables
Cable.copperCable.name=Copper Cable Cable.copperCable.name=Copper Cable

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.2 KiB

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.6 KiB

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 KiB

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.6 KiB

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 KiB

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 KiB

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 KiB

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 KiB

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 KiB

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.6 KiB

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.6 KiB

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.6 KiB

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.9 KiB

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.6 KiB

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.8 KiB

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.6 KiB

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.6 KiB

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 KiB

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.6 KiB

After

Width:  |  Height:  |  Size: 2.6 KiB