Tinkers' Construct Support

Closes #368
This commit is contained in:
Prospector 2016-05-08 18:02:11 -07:00
parent 45e31c1aef
commit b97e884432
4 changed files with 109 additions and 32 deletions

View file

@ -1,18 +1,19 @@
package techreborn.compat; package techreborn.compat;
import java.util.ArrayList;
import net.minecraftforge.fml.common.FMLCommonHandler; import net.minecraftforge.fml.common.FMLCommonHandler;
import net.minecraftforge.fml.common.Loader; import net.minecraftforge.fml.common.Loader;
import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.Side;
import techreborn.client.render.parts.ClientPartLoader; import techreborn.client.render.parts.ClientPartLoader;
import techreborn.compat.minetweaker.MinetweakerCompat; import techreborn.compat.minetweaker.MinetweakerCompat;
import techreborn.compat.tinkers.CompatModuleTinkers;
import techreborn.compat.waila.CompatModuleWaila; import techreborn.compat.waila.CompatModuleWaila;
import techreborn.config.ConfigTechReborn; import techreborn.config.ConfigTechReborn;
import techreborn.parts.StandalonePartCompact; import techreborn.parts.StandalonePartCompact;
import techreborn.parts.TechRebornParts; import techreborn.parts.TechRebornParts;
import techreborn.parts.walia.WailaMcMultiPartCompact; import techreborn.parts.walia.WailaMcMultiPartCompact;
import java.util.ArrayList;
public class CompatManager public class CompatManager
{ {
@ -45,6 +46,7 @@ public class CompatManager
registerCompact(StandalonePartCompact.class, "!mcmultipart"); registerCompact(StandalonePartCompact.class, "!mcmultipart");
registerCompact(WailaMcMultiPartCompact.class, "mcmultipart", "Waila", "!IC2"); registerCompact(WailaMcMultiPartCompact.class, "mcmultipart", "Waila", "!IC2");
registerCompact(CompatModuleWaila.class, "Waila"); registerCompact(CompatModuleWaila.class, "Waila");
registerCompact(CompatModuleTinkers.class, "tconstruct");
//registerCompact(CompatModulePsi.class, "Psi"); //registerCompact(CompatModulePsi.class, "Psi");
} }
@ -107,17 +109,4 @@ public class CompatManager
e.printStackTrace(); e.printStackTrace();
} }
} }
public boolean isForestry4()
{
try
{
Class.forName("forestry.api.arboriculture.EnumWoodType");
return true;
} catch (ClassNotFoundException e)
{
return false;
}
}
} }

View file

@ -6,30 +6,38 @@ import net.minecraftforge.fml.common.event.FMLPreInitializationEvent;
import net.minecraftforge.fml.common.event.FMLServerStartingEvent; import net.minecraftforge.fml.common.event.FMLServerStartingEvent;
import techreborn.compat.ICompatModule; import techreborn.compat.ICompatModule;
/**
* @author Prospector on 08/05/16
*/
public class CompatModuleTinkers implements ICompatModule public class CompatModuleTinkers implements ICompatModule
{ {
@Override
public void preInit(FMLPreInitializationEvent event) {
}
@Override
public void init(FMLInitializationEvent event) {
}
@Override
public void postInit(FMLPostInitializationEvent event) {
}
@Override
public void serverStarting(FMLServerStartingEvent event) {
}
public CompatModuleTinkers() public CompatModuleTinkers()
{ {
super(); super();
} }
@Override public void preInit(FMLPreInitializationEvent event)
{
TinkersFluids.init();
}
@Override public void init(FMLInitializationEvent event)
{
}
@Override public void postInit(FMLPostInitializationEvent event)
{
}
@Override public void serverStarting(FMLServerStartingEvent event)
{
}
} }

View file

@ -0,0 +1,74 @@
package techreborn.compat.tinkers;
import net.minecraft.item.EnumRarity;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.nbt.NBTTagList;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.fluids.Fluid;
import net.minecraftforge.fluids.FluidRegistry;
import net.minecraftforge.fml.common.event.FMLInterModComms;
import slimeknights.tconstruct.library.fluid.FluidMolten;
/**
* @author Prospector on 08/05/16
*/
public class TinkersFluids
{
private static ResourceLocation moltenMetal = new ResourceLocation("tconstruct:blocks/fluids/molten_metal");
private static ResourceLocation moltenMetalFlowing = new ResourceLocation(
"tconstruct:blocks/fluids/molten_metal_flow");
public static FluidMolten moltenChrome = new FluidMolten("chrome", 0x90C9C9, moltenMetal, moltenMetalFlowing);
public static FluidMolten moltenInvar = new FluidMolten("invar", 0x7F907F, moltenMetal, moltenMetalFlowing);
public static FluidMolten moltenIridium = new FluidMolten("iridium", 0xFFFFFF, moltenMetal, moltenMetalFlowing);
public static FluidMolten moltenPlatinum = new FluidMolten("platinum", 0x34BFBF, moltenMetal, moltenMetalFlowing);
public static FluidMolten moltenTitanium = new FluidMolten("titanium", 0x3C372F, moltenMetal, moltenMetalFlowing);
public static FluidMolten moltenTungsten = new FluidMolten("tungsten", 0x3A464F, moltenMetal, moltenMetalFlowing);
public static void init()
{
addFluidStuff(moltenChrome, "Chrome");
moltenChrome.setTemperature(800);
addFluidStuff(moltenInvar, "Invar");
moltenInvar.setTemperature(580);
addFluidStuff(moltenIridium, "Iridium");
moltenIridium.setTemperature(4000);
moltenIridium.setRarity(EnumRarity.EPIC);
addFluidStuff(moltenPlatinum, "Platinum");
moltenPlatinum.setTemperature(900);
addFluidStuff(moltenTitanium, "Titanium");
moltenTitanium.setTemperature(1000);
addFluidStuff(moltenTungsten, "Tungsten");
moltenTungsten.setTemperature(1200);
//Invar Alloying
NBTTagList tagList = new NBTTagList();
NBTTagCompound fluid = new NBTTagCompound();
fluid.setString("FluidName", "invar");
fluid.setInteger("Amount", 144);
tagList.appendTag(fluid);
fluid = new NBTTagCompound();
fluid.setString("FluidName", "iron");
fluid.setInteger("Amount", 96);
tagList.appendTag(fluid);
fluid = new NBTTagCompound();
fluid.setString("FluidName", "nickel");
fluid.setInteger("Amount", 48);
tagList.appendTag(fluid);
NBTTagCompound message = new NBTTagCompound();
message.setTag("alloy", tagList);
FMLInterModComms.sendMessage("tconstruct", "alloy", message);
}
public static void addFluidStuff(Fluid fluid, String oreSuffix)
{
FluidRegistry.registerFluid(fluid);
FluidRegistry.addBucketForFluid(fluid);
NBTTagCompound tag = new NBTTagCompound();
tag.setString("fluid", fluid.getName());
tag.setString("ore", oreSuffix);
tag.setBoolean("toolforge", true);
FMLInterModComms.sendMessage("tconstruct", "integrateSmeltery", tag);
}
}

View file

@ -194,6 +194,12 @@ fluid.tile.techreborn.helium3=Helium3
fluid.tile.techreborn.deuterium=Deuterium fluid.tile.techreborn.deuterium=Deuterium
fluid.tile.techreborn.helium=Helium fluid.tile.techreborn.helium=Helium
fluid.tile.techreborn.calciumcarbonate=Calcium Carbonate fluid.tile.techreborn.calciumcarbonate=Calcium Carbonate
fluid.titanium.name=Molten Titanium
fluid.chrome.name=Molten Chrome
fluid.platinum.name=Molten Platinum
fluid.iridium.name=Molten Iridium
fluid.invar.name=Molten Invar
fluid.tungsten.name=Molten Tungsten
#Dusts #Dusts
item.techreborn.dust.almandine.name=Almandine Dust item.techreborn.dust.almandine.name=Almandine Dust