Added Tinkers Construct integration. Material likely needs some tweaking and the textures need to be changed, but is for the most part done
|
@ -30,6 +30,7 @@ import biomesoplenty.helpers.CreativeTabsBOP;
|
|||
import biomesoplenty.helpers.Localizations;
|
||||
import biomesoplenty.helpers.Version;
|
||||
import biomesoplenty.integration.BOPCrossIntegration;
|
||||
import biomesoplenty.integration.TConstructIntegration;
|
||||
import biomesoplenty.world.WorldProviderBOPhell;
|
||||
import biomesoplenty.world.WorldProviderPromised;
|
||||
import biomesoplenty.world.WorldTypeSize;
|
||||
|
@ -91,6 +92,8 @@ public class BiomesOPlenty
|
|||
GameRegistry.registerCraftingHandler(new BOPCraftHandler());
|
||||
|
||||
MinecraftForge.EVENT_BUS.register(new SoundHandler());
|
||||
|
||||
BOPCrossIntegration.preInit();
|
||||
}
|
||||
|
||||
@Init
|
||||
|
|
|
@ -4,11 +4,14 @@ import java.io.File;
|
|||
import java.util.logging.Level;
|
||||
|
||||
import biomesoplenty.BiomesOPlenty;
|
||||
import biomesoplenty.integration.TConstructIntegration;
|
||||
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraftforge.common.Configuration;
|
||||
import net.minecraftforge.common.Property;
|
||||
import cpw.mods.fml.common.FMLCommonHandler;
|
||||
import cpw.mods.fml.common.FMLLog;
|
||||
import cpw.mods.fml.common.Loader;
|
||||
|
||||
public class BOPConfiguration {
|
||||
|
||||
|
@ -256,6 +259,35 @@ public class BOPConfiguration {
|
|||
public static int scytheAmethystID;
|
||||
|
||||
public static int flowerBandID;
|
||||
|
||||
//Tinkers Construct Compat Item IDs
|
||||
|
||||
public static int bindingID;
|
||||
public static int toughBindingID;
|
||||
public static int toughRodID;
|
||||
public static int heavyPlateID;
|
||||
|
||||
public static int toolRodID;
|
||||
public static int toolShardID;
|
||||
|
||||
public static int pickaxeHeadID;
|
||||
public static int shovelHeadID;
|
||||
public static int hatchetHeadID;
|
||||
public static int frypanHeadID;
|
||||
public static int signHeadID;
|
||||
public static int chiselHeadID;
|
||||
public static int scytheBladeID;
|
||||
public static int broadAxeHeadID;
|
||||
public static int excavatorHeadID;
|
||||
public static int hammerHeadID;
|
||||
|
||||
public static int swordBladeID;
|
||||
public static int largeSwordBladeID;
|
||||
public static int knifeBladeID;
|
||||
|
||||
public static int wideGuardID;
|
||||
public static int handGuardID;
|
||||
public static int crossbarID;
|
||||
|
||||
//Liquid IDs
|
||||
public static int springWaterStillID;
|
||||
|
@ -814,7 +846,35 @@ public class BOPConfiguration {
|
|||
scytheDiamondID = config.getItem("Diamond Scythe ID", 21085).getInt();
|
||||
scytheMudID = config.getItem("Mud Scythe ID", 21086).getInt();
|
||||
scytheAmethystID = config.getItem("Amethyst Scythe ID", 21087).getInt();
|
||||
|
||||
bindingID = config.get("TC Compat IDs", "Binding ID", 21088).getInt();
|
||||
toughBindingID = config.get("TC Compat IDs", "Tough Binding ID", 21089).getInt();
|
||||
toughRodID = config.get("TC Compat IDs", "Tough Rod ID", 21090).getInt();
|
||||
heavyPlateID = config.get("TC Compat IDs", "Heavy Plate", 21091).getInt();
|
||||
|
||||
toolRodID = config.get("TC Compat IDs", "Tool Rod ID", 21092).getInt();
|
||||
toolShardID = config.get("TC Compat IDs", "Tool Shard ID", 21093).getInt();
|
||||
|
||||
pickaxeHeadID = config.get("TC Compat IDs", "Pickaxe Head", 21094).getInt();
|
||||
shovelHeadID = config.get("TC Compat IDs", "Shovel Head", 21095).getInt();
|
||||
hatchetHeadID = config.get("TC Compat IDs", "Hatchet Head", 21906).getInt();
|
||||
frypanHeadID = config.get("TC Compat IDs", "Frypan Head", 21097).getInt();
|
||||
signHeadID = config.get("TC Compat IDs", "Sign Head", 21098).getInt();
|
||||
chiselHeadID = config.get("TC Compat IDs", "Chisel Head", 21099).getInt();
|
||||
scytheBladeID = config.get("TC Compat IDs", "Scythe Blade", 21100).getInt();
|
||||
broadAxeHeadID = config.get("TC Compat IDs", "Broad Axe Head", 21101).getInt();
|
||||
excavatorHeadID = config.get("TC Compat IDs", "Excavator Head", 21102).getInt();
|
||||
hammerHeadID = config.get("TC Compat IDs", "Hammer Head", 21103).getInt();
|
||||
|
||||
swordBladeID = config.get("TC Compat IDs", "Sword Blad", 21104).getInt();
|
||||
largeSwordBladeID = config.get("TC Compat IDs", "Large Sword Blade", 21105).getInt();
|
||||
knifeBladeID = config.get("TC Compat IDs", "Knife Blade", 21106).getInt();
|
||||
|
||||
wideGuardID = config.get("TC Compat IDs", "Wide Guard", 21107).getInt();
|
||||
handGuardID = config.get("TC Compat IDs", "Hand Guard", 21108).getInt();
|
||||
crossbarID = config.get("TC Compat IDs", "Crossbar", 21109).getInt();
|
||||
|
||||
//Reserve 10 Item IDs for future TC items
|
||||
|
||||
//Liquid Ids
|
||||
springWaterStillID = config.get("Liquid IDs", "Spring Water Still ID (ID before this must be free!)", 1971, null).getInt();
|
||||
|
|
|
@ -30,6 +30,7 @@ import net.minecraftforge.event.entity.EntityJoinWorldEvent;
|
|||
import net.minecraftforge.event.entity.living.LivingHurtEvent;
|
||||
import net.minecraftforge.event.entity.living.LivingSpawnEvent.CheckSpawn;
|
||||
import net.minecraftforge.event.entity.player.EntityInteractEvent;
|
||||
import biomesoplenty.api.Biomes;
|
||||
import biomesoplenty.api.Blocks;
|
||||
import biomesoplenty.api.Items;
|
||||
import biomesoplenty.configuration.BOPConfiguration;
|
||||
|
|
|
@ -9,29 +9,54 @@ public class Localizations
|
|||
{
|
||||
private static final String localizationLocation = "/mods/BiomesOPlenty/localizations/";
|
||||
|
||||
public static String[] localeFiles = { localizationLocation + "en_US.xml", localizationLocation + "de_DE.xml", localizationLocation + "nl_NL.xml" };
|
||||
|
||||
public static boolean isXMLLanguageFile(String fileName)
|
||||
{
|
||||
return fileName.endsWith(".xml");
|
||||
}
|
||||
public static String[] localeFiles = { localizationLocation + "en_US.xml", localizationLocation + "de_DE.xml", localizationLocation + "nl_NL.xml" };
|
||||
|
||||
public static String getLocaleFromFileName(String fileName)
|
||||
{
|
||||
FMLCommonHandler.instance().getFMLLogger().log(Level.INFO, "[BiomesOPlenty] Localizations loaded for " + fileName.substring(fileName.lastIndexOf('/') + 1, fileName.lastIndexOf('.')));
|
||||
return fileName.substring(fileName.lastIndexOf('/') + 1, fileName.lastIndexOf('.'));
|
||||
}
|
||||
public static boolean isXMLLanguageFile(String fileName)
|
||||
{
|
||||
return fileName.endsWith(".xml");
|
||||
}
|
||||
|
||||
public String getLocalizedString(String key)
|
||||
{
|
||||
return LanguageRegistry.instance().getStringLocalization(key);
|
||||
}
|
||||
|
||||
public static void loadLanguages()
|
||||
{
|
||||
for (String localizationFile : localeFiles)
|
||||
public static String getLocaleFromFileName(String fileName)
|
||||
{
|
||||
FMLCommonHandler.instance().getFMLLogger().log(Level.INFO, "[BiomesOPlenty] Localizations loaded for " + fileName.substring(fileName.lastIndexOf('/') + 1, fileName.lastIndexOf('.')));
|
||||
return fileName.substring(fileName.lastIndexOf('/') + 1, fileName.lastIndexOf('.'));
|
||||
}
|
||||
|
||||
public String getLocalizedString(String key)
|
||||
{
|
||||
return LanguageRegistry.instance().getStringLocalization(key);
|
||||
}
|
||||
|
||||
public static void loadLanguages()
|
||||
{
|
||||
for (String localizationFile : localeFiles)
|
||||
{
|
||||
LanguageRegistry.instance().loadLocalization(localizationFile, getLocaleFromFileName(localizationFile), isXMLLanguageFile(localizationFile));
|
||||
}
|
||||
|
||||
for (int mat = 0; mat < materialTypes.length; mat++)
|
||||
{
|
||||
for (int type = 0; type < toolMaterialNames.length; type++)
|
||||
{
|
||||
String internalName = new StringBuilder().append("item.bop.tc.").append(materialTypes[mat]).append(".").append(toolMaterialNames[type]).append(".name").toString();
|
||||
String visibleName = new StringBuilder().append(toolMaterialNames[type]).append(materialNames[mat]).toString();
|
||||
LanguageRegistry.instance().addStringLocalization(internalName, "en_US", visibleName);
|
||||
}
|
||||
}
|
||||
|
||||
for (int i = 0; i < shardNames.length; i++)
|
||||
{
|
||||
LanguageRegistry.instance().loadLocalization(localizationFile, getLocaleFromFileName(localizationFile), isXMLLanguageFile(localizationFile));
|
||||
String internalName = "item.bop.tc.ToolShard." + toolMaterialNames[i] + ".name";
|
||||
String visibleName = shardNames[i];
|
||||
LanguageRegistry.instance().addStringLocalization(internalName, "en_US", visibleName);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public static final String[] shardNames = new String[] { "Amethyst" };
|
||||
|
||||
public static final String[] toolMaterialNames = new String[] { "Amethyst" };
|
||||
|
||||
public static final String[] materialTypes = new String[] { "ToolRod", "PickaxeHead", "ShovelHead", "AxeHead", "SwordBlade", "LargeGuard", "MediumGuard", "Crossbar", "Binding", "FrypanHead", "SignHead", "LumberHead", "KnifeBlade", "ChiselHead", "ScytheBlade", "LumberHead", "ThickRod", "ThickBinding", "LargeSwordBlade", "LargePlate", "ExcavatorHead", "HammerHead", "FullGuard" };
|
||||
|
||||
public static final String[] materialNames = new String[] { " Rod", " Pickaxe Head", " Shovel Head", " Axe Head", " Sword Blade", " Wide Guard", " Hand Guard", " Crossbar", " Binding", " Pan", " Board", " Broad Axe Head", " Knife Blade", " Chisel Head", " Scythe Blade", " Broad Axe Head", " Tough Tool Rod", " Tough Binding", " Large Sword Blade", " Large Plate", " Excavator Head", " Hammer Head", " Full Guard"};
|
||||
}
|
||||
|
|
|
@ -3,6 +3,10 @@ package biomesoplenty.integration;
|
|||
import cpw.mods.fml.common.Loader;
|
||||
|
||||
public class BOPCrossIntegration {
|
||||
|
||||
public static void preInit()
|
||||
{
|
||||
}
|
||||
|
||||
public static void init()
|
||||
{
|
||||
|
@ -16,7 +20,18 @@ public class BOPCrossIntegration {
|
|||
e.printStackTrace(System.err);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (Loader.isModLoaded("TConstruct"))
|
||||
{
|
||||
try {
|
||||
TConstructIntegration.init();
|
||||
}
|
||||
catch (Exception e) {
|
||||
System.out.println("[BiomesOPlenty] There was an error while integrating TConstruct with Biomes O' Plenty!");
|
||||
e.printStackTrace(System.err);
|
||||
}
|
||||
}
|
||||
|
||||
if (Loader.isModLoaded("Thaumcraft"))
|
||||
{
|
||||
try {
|
||||
|
|
|
@ -0,0 +1,21 @@
|
|||
package biomesoplenty.integration;
|
||||
|
||||
import mods.tinker.tconstruct.library.TConstructRegistry;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import biomesoplenty.api.Blocks;
|
||||
import biomesoplenty.integration.tinkersconstruct.TCItems;
|
||||
import cpw.mods.fml.common.event.FMLInterModComms;
|
||||
|
||||
public class TConstructIntegration
|
||||
{
|
||||
public static void init()
|
||||
{
|
||||
addMaterials();
|
||||
TCItems.init();
|
||||
}
|
||||
|
||||
private static void addMaterials()
|
||||
{
|
||||
TConstructRegistry.addToolMaterial(150, "Amethyst", 4, 750, 800, 3, 1.3F, 2, 0f, "", "");
|
||||
}
|
||||
}
|
|
@ -0,0 +1,61 @@
|
|||
package biomesoplenty.integration.tinkersconstruct;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import mods.tinker.tconstruct.library.TConstructRegistry;
|
||||
import net.minecraft.client.renderer.texture.IconRegister;
|
||||
import net.minecraft.creativetab.CreativeTabs;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.util.Icon;
|
||||
import net.minecraft.util.MathHelper;
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
|
||||
public class BOPCraftingItem extends Item
|
||||
{
|
||||
public String[] textureNames;
|
||||
public String[] unlocalizedNames;
|
||||
public String folder;
|
||||
public Icon[] icons;
|
||||
public BOPCraftingItem(int id, String[] names, String[] tex, String folder)
|
||||
{
|
||||
super(id);
|
||||
this.setCreativeTab(TConstructRegistry.materialTab);
|
||||
this.setMaxDamage(0);
|
||||
this.setHasSubtypes(true);
|
||||
this.textureNames = tex;
|
||||
this.unlocalizedNames = names;
|
||||
this.folder = folder;
|
||||
}
|
||||
|
||||
@SideOnly(Side.CLIENT)
|
||||
public Icon getIconFromDamage(int meta)
|
||||
{
|
||||
return icons[meta];
|
||||
}
|
||||
|
||||
@SideOnly(Side.CLIENT)
|
||||
@Override
|
||||
public void registerIcons(IconRegister iconRegister)
|
||||
{
|
||||
this.icons = new Icon[textureNames.length];
|
||||
|
||||
for (int i = 0; i < this.icons.length; ++i)
|
||||
{
|
||||
this.icons[i] = iconRegister.registerIcon("BiomesOPlenty:"+folder+textureNames[i]);
|
||||
}
|
||||
}
|
||||
|
||||
public String getUnlocalizedName(ItemStack stack)
|
||||
{
|
||||
int arr = MathHelper.clamp_int(stack.getItemDamage(), 0, unlocalizedNames.length);
|
||||
return getUnlocalizedName() + "." +unlocalizedNames[arr];
|
||||
}
|
||||
|
||||
public void getSubItems (int id, CreativeTabs tab, List list)
|
||||
{
|
||||
for (int i = 0; i < unlocalizedNames.length; i++)
|
||||
list.add(new ItemStack(id, 1, i));
|
||||
}
|
||||
}
|
|
@ -0,0 +1,42 @@
|
|||
package biomesoplenty.integration.tinkersconstruct;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
|
||||
import mods.tinker.tconstruct.library.TConstructRegistry;
|
||||
import mods.tinker.tconstruct.library.util.IToolPart;
|
||||
import net.minecraft.client.renderer.texture.IconRegister;
|
||||
import net.minecraft.creativetab.CreativeTabs;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.util.Icon;
|
||||
import net.minecraft.util.MathHelper;
|
||||
|
||||
public class BOPToolPart extends BOPCraftingItem implements IToolPart
|
||||
{
|
||||
public BOPToolPart(int id, String partType, String textureType)
|
||||
{
|
||||
super(id, toolMaterialNames, buildTextureNames(textureType), "parts/");
|
||||
this.setHasSubtypes(true);
|
||||
this.setMaxDamage(0);
|
||||
}
|
||||
|
||||
private static String[] buildTextureNames (String textureType)
|
||||
{
|
||||
String[] names = new String[toolMaterialNames.length];
|
||||
for (int i = 0; i < toolMaterialNames.length; i++)
|
||||
names[i] = toolTextureNames[i]+textureType;
|
||||
return names;
|
||||
}
|
||||
|
||||
public static final String[] toolMaterialNames = new String[] { "Amethyst" };
|
||||
|
||||
public static final String[] toolTextureNames = new String[] { "amethyst" };
|
||||
|
||||
@Override
|
||||
public int getMaterialID (ItemStack stack)
|
||||
{
|
||||
return 150 + stack.getItemDamage();
|
||||
}
|
||||
}
|
|
@ -0,0 +1,46 @@
|
|||
package biomesoplenty.integration.tinkersconstruct;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
|
||||
import net.minecraft.client.renderer.texture.IconRegister;
|
||||
import net.minecraft.creativetab.CreativeTabs;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.util.Icon;
|
||||
|
||||
public class BOPToolShard extends BOPToolPart
|
||||
{
|
||||
public BOPToolShard(int id, String part, String tex)
|
||||
{
|
||||
super(id, part, tex);
|
||||
this.setHasSubtypes(true);
|
||||
this.setMaxDamage(0);
|
||||
}
|
||||
|
||||
private static String[] buildTextureNames (String textureType)
|
||||
{
|
||||
String[] names = new String[toolMaterialNames.length];
|
||||
for (int i = 0; i < toolMaterialNames.length; i++)
|
||||
names[i] = toolTextureNames[i]+textureType;
|
||||
return names;
|
||||
}
|
||||
|
||||
@SideOnly(Side.CLIENT)
|
||||
public void registerIcons(IconRegister iconRegister)
|
||||
{
|
||||
this.icons = new Icon[textureNames.length];
|
||||
|
||||
for (int i = 0; i < textureNames.length; ++i)
|
||||
{
|
||||
this.icons[i] = iconRegister.registerIcon("BiomesOPlenty:"+folder+textureNames[i]);
|
||||
}
|
||||
}
|
||||
|
||||
public void getSubItems (int id, CreativeTabs tab, List list)
|
||||
{
|
||||
for (int i = 0; i < toolMaterialNames.length; i++)
|
||||
list.add(new ItemStack(id, 1, i));
|
||||
}
|
||||
}
|
|
@ -0,0 +1,122 @@
|
|||
package biomesoplenty.integration.tinkersconstruct;
|
||||
|
||||
import java.util.Iterator;
|
||||
|
||||
import mods.tinker.tconstruct.library.TConstructRegistry;
|
||||
import mods.tinker.tconstruct.library.client.TConstructClientRegistry;
|
||||
import mods.tinker.tconstruct.library.crafting.PatternBuilder;
|
||||
import mods.tinker.tconstruct.library.crafting.ToolBuilder;
|
||||
import mods.tinker.tconstruct.library.tools.ToolCore;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.potion.PotionEffect;
|
||||
import biomesoplenty.api.Items;
|
||||
import biomesoplenty.configuration.BOPConfiguration;
|
||||
|
||||
public class TCItems
|
||||
{
|
||||
public static Item binding;
|
||||
public static Item toughBinding;
|
||||
public static Item toughRod;
|
||||
public static Item heavyPlate;
|
||||
|
||||
public static Item toolRod;
|
||||
public static Item toolShard;
|
||||
|
||||
public static Item pickaxeHead;
|
||||
public static Item shovelHead;
|
||||
public static Item hatchetHead;
|
||||
public static Item frypanHead;
|
||||
public static Item signHead;
|
||||
public static Item chiselHead;
|
||||
public static Item scytheBlade;
|
||||
public static Item broadAxeHead;
|
||||
public static Item excavatorHead;
|
||||
public static Item hammerHead;
|
||||
|
||||
public static Item swordBlade;
|
||||
public static Item largeSwordBlade;
|
||||
public static Item knifeBlade;
|
||||
|
||||
public static Item wideGuard;
|
||||
public static Item handGuard;
|
||||
public static Item crossbar;
|
||||
|
||||
public static void init()
|
||||
{
|
||||
initializeItems();
|
||||
addCrafting();
|
||||
}
|
||||
|
||||
private static void initializeItems()
|
||||
{
|
||||
toolRod = new BOPToolPart(BOPConfiguration.toolRodID, "ToolRod", "_rod").setUnlocalizedName("bop.tc.ToolRod");
|
||||
toolShard = new BOPToolShard(BOPConfiguration.toolShardID, "ToolShard", "_chunk").setUnlocalizedName("bop.tc.ToolShard");
|
||||
|
||||
pickaxeHead = new BOPToolPart(BOPConfiguration.pickaxeHeadID, "PickaxeHead", "_pickaxe_head").setUnlocalizedName("bop.tc.PickaxeHead");
|
||||
shovelHead = new BOPToolPart(BOPConfiguration.shovelHeadID, "ShovelHead", "_shovel_head").setUnlocalizedName("bop.tc.ShovelHead");
|
||||
hatchetHead = new BOPToolPart(BOPConfiguration.hatchetHeadID, "AxeHead", "_axe_head").setUnlocalizedName("bop.tc.AxeHead");
|
||||
binding = new BOPToolPart(BOPConfiguration.bindingID, "Binding", "_binding").setUnlocalizedName("bop.tc.Binding");
|
||||
toughBinding = new BOPToolPart(BOPConfiguration.toughBindingID, "ThickBinding", "_toughbind").setUnlocalizedName("bop.tc.ThickBinding");
|
||||
toughRod = new BOPToolPart(BOPConfiguration.toughRodID, "ThickRod", "_toughrod").setUnlocalizedName("bop.tc.ThickRod");
|
||||
heavyPlate = new BOPToolPart(BOPConfiguration.heavyPlateID, "LargePlate", "_largeplate").setUnlocalizedName("bop.tc.LargePlate");
|
||||
|
||||
swordBlade = new BOPToolPart(BOPConfiguration.swordBladeID, "SwordBlade", "_sword_blade").setUnlocalizedName("bop.tc.SwordBlade");
|
||||
wideGuard = new BOPToolPart(BOPConfiguration.wideGuardID, "LargeGuard", "_large_guard").setUnlocalizedName("bop.tc.LargeGuard");
|
||||
handGuard = new BOPToolPart(BOPConfiguration.handGuardID, "MediumGuard", "_medium_guard").setUnlocalizedName("bop.tc.MediumGuard");
|
||||
crossbar = new BOPToolPart(BOPConfiguration.crossbarID, "Crossbar", "_crossbar").setUnlocalizedName("bop.tc.Crossbar");
|
||||
knifeBlade = new BOPToolPart(BOPConfiguration.knifeBladeID, "KnifeBlade", "_knife_blade").setUnlocalizedName("bop.tc.KnifeBlade");
|
||||
|
||||
frypanHead = new BOPToolPart(BOPConfiguration.frypanHeadID, "FrypanHead", "_frypan_head").setUnlocalizedName("bop.tc.FrypanHead");
|
||||
signHead = new BOPToolPart(BOPConfiguration.signHeadID, "SignHead", "_battlesign_head").setUnlocalizedName("bop.tc.SignHead");
|
||||
chiselHead = new BOPToolPart(BOPConfiguration.chiselHeadID, "ChiselHead", "_chisel_head").setUnlocalizedName("bop.tc.ChiselHead");
|
||||
|
||||
scytheBlade = new BOPToolPart(BOPConfiguration.scytheBladeID, "ScytheBlade", "_scythe_head").setUnlocalizedName("bop.tc.ScytheBlade");
|
||||
broadAxeHead = new BOPToolPart(BOPConfiguration.broadAxeHeadID, "LumberHead", "_lumberaxe_head").setUnlocalizedName("bop.tc.LumberHead");
|
||||
excavatorHead = new BOPToolPart(BOPConfiguration.excavatorHeadID, "ExcavatorHead", "_excavator_head").setUnlocalizedName("bop.tc.ExcavatorHead");
|
||||
largeSwordBlade = new BOPToolPart(BOPConfiguration.largeSwordBladeID, "LargeSwordBlade", "_large_sword_blade").setUnlocalizedName("bop.tc.LargeSwordBlade");
|
||||
hammerHead = new BOPToolPart(BOPConfiguration.hammerHeadID, "HammerHead", "_hammer_head").setUnlocalizedName("bop.tc.HammerHead");
|
||||
}
|
||||
|
||||
private static void addCrafting()
|
||||
{
|
||||
PatternBuilder pb = PatternBuilder.instance;
|
||||
pb.registerFullMaterial(new ItemStack(Items.miscItems.get(), 1, 2), 2, "Amethyst", new ItemStack(toolShard, 1, 0), new ItemStack(toolRod, 1, 0), 150);
|
||||
|
||||
Item[] patternOutputs = new Item[] { toolRod, pickaxeHead, shovelHead, hatchetHead, swordBlade, wideGuard, handGuard, crossbar, binding, frypanHead, signHead, knifeBlade, chiselHead, toughRod, toughBinding, heavyPlate, broadAxeHead, scytheBlade, excavatorHead, largeSwordBlade, hammerHead };
|
||||
String[] partTypes = { "amethyst" };
|
||||
|
||||
for (int mat = 0; mat < 1; mat++)
|
||||
{
|
||||
for (int meta = 0; meta < patternOutputs.length; meta++)
|
||||
{
|
||||
TConstructRegistry.addPartMapping(TConstructRegistry.getItem("woodPattern").itemID, meta + 1, 150, new ItemStack(patternOutputs[meta], 1, mat));
|
||||
}
|
||||
}
|
||||
|
||||
for (int partIter = 0; partIter < partTypes.length; partIter++)
|
||||
{
|
||||
TConstructClientRegistry.addMaterialRenderMapping(150 + partIter, "BiomesOPlenty", partTypes[partIter], true);
|
||||
}
|
||||
|
||||
ToolBuilder tb = ToolBuilder.instance;
|
||||
tb.addNormalToolRecipe((ToolCore)TConstructRegistry.getItem("pickaxe"), pickaxeHead, toolRod, binding);
|
||||
tb.addNormalToolRecipe((ToolCore)TConstructRegistry.getItem("broadsword"), swordBlade, toolRod, wideGuard);
|
||||
tb.addNormalToolRecipe((ToolCore)TConstructRegistry.getItem("hatchet"), hatchetHead, toolRod);
|
||||
tb.addNormalToolRecipe((ToolCore)TConstructRegistry.getItem("shovel"), shovelHead, toolRod);
|
||||
tb.addNormalToolRecipe((ToolCore)TConstructRegistry.getItem("longsword"), swordBlade, toolRod, handGuard);
|
||||
tb.addNormalToolRecipe((ToolCore)TConstructRegistry.getItem("rapier"), swordBlade, toolRod, crossbar);
|
||||
tb.addNormalToolRecipe((ToolCore)TConstructRegistry.getItem("frypan"), frypanHead, toolRod);
|
||||
tb.addNormalToolRecipe((ToolCore)TConstructRegistry.getItem("battlesign"), signHead, toolRod);
|
||||
tb.addNormalToolRecipe((ToolCore)TConstructRegistry.getItem("mattock"), hatchetHead, toolRod, shovelHead);
|
||||
//tb.addNormalToolRecipe((ToolCore)TConstructRegistry.getItem("dagger"), knifeBlade, crossbar);
|
||||
tb.addNormalToolRecipe((ToolCore)TConstructRegistry.getItem("chisel"), chiselHead, toolRod);
|
||||
tb.addNormalToolRecipe((ToolCore)TConstructRegistry.getItem("scythe"), scytheBlade, toughRod, toughBinding, toughRod);
|
||||
tb.addNormalToolRecipe((ToolCore)TConstructRegistry.getItem("lumberaxe"), broadAxeHead, toughRod, heavyPlate, toughBinding);
|
||||
tb.addNormalToolRecipe((ToolCore)TConstructRegistry.getItem("cleaver"), largeSwordBlade, toughRod, heavyPlate, toughRod);
|
||||
tb.addNormalToolRecipe((ToolCore)TConstructRegistry.getItem("excavator"), excavatorHead, toughRod, heavyPlate, toughBinding);
|
||||
tb.addNormalToolRecipe((ToolCore)TConstructRegistry.getItem("hammer"), hammerHead, toughRod, heavyPlate, heavyPlate);
|
||||
tb.addNormalToolRecipe((ToolCore)TConstructRegistry.getItem("battleaxe"), broadAxeHead, toughRod, broadAxeHead, toughBinding);
|
||||
}
|
||||
}
|
|
@ -339,6 +339,8 @@
|
|||
<entry key="item.bop.flowerBand.lushflowerband.name">Lush Flower Band</entry>
|
||||
<entry key="item.bop.flowerBand.exoticflowerband.name">Exotic Flower Band</entry>
|
||||
|
||||
<!--Tinker's Construct Items -->
|
||||
|
||||
<!--Liquids -->
|
||||
<entry key="item.bop.bopBucket.spring_water.name">Spring Water Bucket</entry>
|
||||
<entry key="item.bop.bopBucket.liquid_poison.name">Liquid Poison Bucket</entry>
|
||||
|
|
BIN
src/minecraft/mods/BiomesOPlenty/textures/items/axe/alumite_axe_handle.png
Executable file
After Width: | Height: | Size: 104 B |
BIN
src/minecraft/mods/BiomesOPlenty/textures/items/axe/alumite_axe_head.png
Executable file
After Width: | Height: | Size: 208 B |
BIN
src/minecraft/mods/BiomesOPlenty/textures/items/axe/alumite_axe_head_broken.png
Executable file
After Width: | Height: | Size: 125 B |
After Width: | Height: | Size: 102 B |
After Width: | Height: | Size: 127 B |
After Width: | Height: | Size: 102 B |
After Width: | Height: | Size: 121 B |
After Width: | Height: | Size: 121 B |
After Width: | Height: | Size: 129 B |
After Width: | Height: | Size: 108 B |
After Width: | Height: | Size: 127 B |
After Width: | Height: | Size: 129 B |
After Width: | Height: | Size: 108 B |
After Width: | Height: | Size: 152 B |
After Width: | Height: | Size: 172 B |
After Width: | Height: | Size: 219 B |
After Width: | Height: | Size: 170 B |
After Width: | Height: | Size: 209 B |
After Width: | Height: | Size: 173 B |
After Width: | Height: | Size: 157 B |
BIN
src/minecraft/mods/BiomesOPlenty/textures/items/chisel/amethyst_chisel_head.png
Executable file
After Width: | Height: | Size: 276 B |
After Width: | Height: | Size: 220 B |
After Width: | Height: | Size: 193 B |
After Width: | Height: | Size: 148 B |
After Width: | Height: | Size: 253 B |
After Width: | Height: | Size: 199 B |
After Width: | Height: | Size: 276 B |
After Width: | Height: | Size: 273 B |
After Width: | Height: | Size: 294 B |
After Width: | Height: | Size: 170 B |
After Width: | Height: | Size: 182 B |
After Width: | Height: | Size: 179 B |
BIN
src/minecraft/mods/BiomesOPlenty/textures/items/dagger/amethyst_dagger_blade.png
Executable file
After Width: | Height: | Size: 270 B |
After Width: | Height: | Size: 225 B |
After Width: | Height: | Size: 154 B |
After Width: | Height: | Size: 309 B |
After Width: | Height: | Size: 190 B |
After Width: | Height: | Size: 192 B |
After Width: | Height: | Size: 268 B |
After Width: | Height: | Size: 156 B |
After Width: | Height: | Size: 107 B |
BIN
src/minecraft/mods/BiomesOPlenty/textures/items/frypan/amethyst_frypan_head.png
Executable file
After Width: | Height: | Size: 176 B |
After Width: | Height: | Size: 187 B |
BIN
src/minecraft/mods/BiomesOPlenty/textures/items/hammer/amethyst_hammer_back.png
Executable file
After Width: | Height: | Size: 120 B |
BIN
src/minecraft/mods/BiomesOPlenty/textures/items/hammer/amethyst_hammer_front.png
Executable file
After Width: | Height: | Size: 116 B |
After Width: | Height: | Size: 101 B |
After Width: | Height: | Size: 118 B |
BIN
src/minecraft/mods/BiomesOPlenty/textures/items/hammer/amethyst_hammer_head.png
Executable file
After Width: | Height: | Size: 150 B |
After Width: | Height: | Size: 115 B |
After Width: | Height: | Size: 103 B |
After Width: | Height: | Size: 107 B |
After Width: | Height: | Size: 109 B |
After Width: | Height: | Size: 343 B |
After Width: | Height: | Size: 162 B |
After Width: | Height: | Size: 271 B |
After Width: | Height: | Size: 200 B |
After Width: | Height: | Size: 250 B |
After Width: | Height: | Size: 123 B |
After Width: | Height: | Size: 105 B |
After Width: | Height: | Size: 130 B |
After Width: | Height: | Size: 123 B |
BIN
src/minecraft/mods/BiomesOPlenty/textures/items/parts/amethyst_axe_head.png
Executable file
After Width: | Height: | Size: 305 B |
After Width: | Height: | Size: 151 B |
BIN
src/minecraft/mods/BiomesOPlenty/textures/items/parts/amethyst_binding.png
Executable file
After Width: | Height: | Size: 206 B |
BIN
src/minecraft/mods/BiomesOPlenty/textures/items/parts/amethyst_chisel_head.png
Executable file
After Width: | Height: | Size: 282 B |
BIN
src/minecraft/mods/BiomesOPlenty/textures/items/parts/amethyst_chunk.png
Executable file
After Width: | Height: | Size: 378 B |
BIN
src/minecraft/mods/BiomesOPlenty/textures/items/parts/amethyst_crossbar.png
Executable file
After Width: | Height: | Size: 223 B |
After Width: | Height: | Size: 274 B |
BIN
src/minecraft/mods/BiomesOPlenty/textures/items/parts/amethyst_frypan_head.png
Executable file
After Width: | Height: | Size: 173 B |
BIN
src/minecraft/mods/BiomesOPlenty/textures/items/parts/amethyst_full_guard.png
Executable file
After Width: | Height: | Size: 249 B |
BIN
src/minecraft/mods/BiomesOPlenty/textures/items/parts/amethyst_hammer_head.png
Executable file
After Width: | Height: | Size: 344 B |
BIN
src/minecraft/mods/BiomesOPlenty/textures/items/parts/amethyst_knife_blade.png
Executable file
After Width: | Height: | Size: 263 B |
BIN
src/minecraft/mods/BiomesOPlenty/textures/items/parts/amethyst_large_guard.png
Executable file
After Width: | Height: | Size: 286 B |
After Width: | Height: | Size: 204 B |
BIN
src/minecraft/mods/BiomesOPlenty/textures/items/parts/amethyst_largeplate.png
Executable file
After Width: | Height: | Size: 169 B |
After Width: | Height: | Size: 266 B |
BIN
src/minecraft/mods/BiomesOPlenty/textures/items/parts/amethyst_medium_guard.png
Executable file
After Width: | Height: | Size: 297 B |
BIN
src/minecraft/mods/BiomesOPlenty/textures/items/parts/amethyst_pickaxe_head.png
Executable file
After Width: | Height: | Size: 419 B |
BIN
src/minecraft/mods/BiomesOPlenty/textures/items/parts/amethyst_rod.png
Executable file
After Width: | Height: | Size: 214 B |
BIN
src/minecraft/mods/BiomesOPlenty/textures/items/parts/amethyst_scythe_head.png
Executable file
After Width: | Height: | Size: 365 B |
BIN
src/minecraft/mods/BiomesOPlenty/textures/items/parts/amethyst_shovel_head.png
Executable file
After Width: | Height: | Size: 270 B |
BIN
src/minecraft/mods/BiomesOPlenty/textures/items/parts/amethyst_sword_blade.png
Executable file
After Width: | Height: | Size: 157 B |
BIN
src/minecraft/mods/BiomesOPlenty/textures/items/parts/amethyst_toughbind.png
Executable file
After Width: | Height: | Size: 314 B |
BIN
src/minecraft/mods/BiomesOPlenty/textures/items/parts/amethyst_toughrod.png
Executable file
After Width: | Height: | Size: 107 B |
After Width: | Height: | Size: 102 B |
After Width: | Height: | Size: 110 B |
After Width: | Height: | Size: 136 B |
After Width: | Height: | Size: 122 B |
After Width: | Height: | Size: 112 B |