v5.0.9 Release
*Sounds for the Hydrogen Generator. *Sounds for the Smelting Factory. *Sounds for the Bio-Generator. *Copper Dust. *Tin Dust. *Bumped version to 5.0.9. *Fixed Ancient Warfare incompatibility. *NEI plugin. *Better Ore Dictionary integration. *Configuration for item IDs. *Other minor tweaks and bugfixes.
This commit is contained in:
parent
c328e393bf
commit
2f61becc52
38 changed files with 1093 additions and 243 deletions
Binary file not shown.
Before Width: | Height: | Size: 4.4 KiB After Width: | Height: | Size: 4.4 KiB |
Binary file not shown.
After Width: | Height: | Size: 4.6 KiB |
BIN
bin/minecraft/resources/mekanism/sound/BioGenerator.ogg
Normal file
BIN
bin/minecraft/resources/mekanism/sound/BioGenerator.ogg
Normal file
Binary file not shown.
BIN
bin/minecraft/resources/mekanism/sound/HydrogenGenerator.ogg
Normal file
BIN
bin/minecraft/resources/mekanism/sound/HydrogenGenerator.ogg
Normal file
Binary file not shown.
BIN
bin/minecraft/resources/mekanism/sound/SmeltingFactory.ogg
Normal file
BIN
bin/minecraft/resources/mekanism/sound/SmeltingFactory.ogg
Normal file
Binary file not shown.
Binary file not shown.
Before Width: | Height: | Size: 28 KiB After Width: | Height: | Size: 29 KiB |
|
@ -29,16 +29,19 @@ public class ItemRenderingHandler implements IItemRenderer
|
|||
@Override
|
||||
public void renderItem(ItemRenderType type, ItemStack item, Object... data)
|
||||
{
|
||||
EnergyCubeTier tier = ((IEnergyCube)item.getItem()).getTier(item);
|
||||
|
||||
ForgeHooksClient.bindTexture(item.getItem().getTextureFile(), 0);
|
||||
|
||||
if(type == ItemRenderType.EQUIPPED)
|
||||
{
|
||||
GL11.glTranslatef(0.5F, 0.5F, 0.5F);
|
||||
}
|
||||
|
||||
renderItem((RenderBlocks)data[0], tier == EnergyCubeTier.BASIC ? 0 : (tier == EnergyCubeTier.ADVANCED ? 1 : (tier == EnergyCubeTier.ULTIMATE ? 2 : 0)));
|
||||
if(item.getItem() instanceof IEnergyCube)
|
||||
{
|
||||
EnergyCubeTier tier = ((IEnergyCube)item.getItem()).getTier(item);
|
||||
|
||||
ForgeHooksClient.bindTexture(item.getItem().getTextureFile(), 0);
|
||||
|
||||
if(type == ItemRenderType.EQUIPPED)
|
||||
{
|
||||
GL11.glTranslatef(0.5F, 0.5F, 0.5F);
|
||||
}
|
||||
|
||||
renderItem((RenderBlocks)data[0], tier == EnergyCubeTier.BASIC ? 0 : (tier == EnergyCubeTier.ADVANCED ? 1 : (tier == EnergyCubeTier.ULTIMATE ? 2 : 0)));
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
package mekanism.common;
|
||||
|
||||
import ic2.api.IElectricItem;
|
||||
import mekanism.api.ItemMachineUpgrade;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.entity.player.InventoryPlayer;
|
||||
import net.minecraft.inventory.Container;
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
package mekanism.common;
|
||||
|
||||
import ic2.api.IElectricItem;
|
||||
import mekanism.api.ItemMachineUpgrade;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.entity.player.InventoryPlayer;
|
||||
import net.minecraft.inventory.Container;
|
||||
|
|
|
@ -4,7 +4,6 @@ import ic2.api.IElectricItem;
|
|||
import mekanism.api.InfusionInput;
|
||||
import mekanism.api.InfusionOutput;
|
||||
import mekanism.api.InfusionType;
|
||||
import mekanism.api.ItemMachineUpgrade;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.entity.player.InventoryPlayer;
|
||||
import net.minecraft.inventory.Container;
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
package mekanism.common;
|
||||
|
||||
import ic2.api.IElectricItem;
|
||||
import mekanism.api.ItemMachineUpgrade;
|
||||
import mekanism.api.Tier.SmeltingFactoryTier;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.entity.player.InventoryPlayer;
|
||||
|
|
|
@ -8,7 +8,8 @@ import net.minecraft.item.ItemStack;
|
|||
public class ItemDust extends ItemMekanism
|
||||
{
|
||||
public static String[] en_USNames = {"Iron", "Gold", "Platinum",
|
||||
"Obsidian", "Diamond", "Steel"};
|
||||
"Obsidian", "Diamond", "Steel",
|
||||
"Copper", "Tin"};
|
||||
|
||||
public ItemDust(int id)
|
||||
{
|
||||
|
@ -28,6 +29,8 @@ public class ItemDust extends ItemMekanism
|
|||
case 3: return 241;
|
||||
case 4: return 249;
|
||||
case 5: return 245;
|
||||
case 6: return 243;
|
||||
case 7: return 244;
|
||||
default: return 0;
|
||||
}
|
||||
}
|
||||
|
@ -35,7 +38,7 @@ public class ItemDust extends ItemMekanism
|
|||
@Override
|
||||
public void getSubItems(int id, CreativeTabs tabs, List itemList)
|
||||
{
|
||||
for (int counter = 0; counter <= 5; ++counter)
|
||||
for (int counter = 0; counter <= 7; ++counter)
|
||||
{
|
||||
itemList.add(new ItemStack(this, 1, counter));
|
||||
}
|
||||
|
|
|
@ -1,13 +1,17 @@
|
|||
package mekanism.api;
|
||||
package mekanism.common;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import universalelectricity.prefab.modifier.IModifier;
|
||||
|
||||
import mekanism.api.IMachineUpgrade;
|
||||
import mekanism.api.TabProxy;
|
||||
import net.minecraft.creativetab.CreativeTabs;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.item.ItemStack;
|
||||
|
||||
public class ItemMachineUpgrade extends Item implements IMachineUpgrade
|
||||
public class ItemMachineUpgrade extends Item implements IMachineUpgrade, IModifier
|
||||
{
|
||||
public int ENERGY_BOOST;
|
||||
public int TICK_REDUCTION;
|
||||
|
@ -45,4 +49,18 @@ public class ItemMachineUpgrade extends Item implements IMachineUpgrade
|
|||
{
|
||||
return TICK_REDUCTION;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getName(ItemStack itemstack)
|
||||
{
|
||||
return shiftedIndex == Mekanism.SpeedUpgrade.shiftedIndex ? "Speed" :
|
||||
(shiftedIndex == Mekanism.EnergyUpgrade.shiftedIndex ? "Capacity" : "All");
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getEffectiveness(ItemStack itemstack)
|
||||
{
|
||||
return shiftedIndex == Mekanism.SpeedUpgrade.shiftedIndex ? 150 :
|
||||
(shiftedIndex == Mekanism.EnergyUpgrade.shiftedIndex ? 1000 : 2500);
|
||||
}
|
||||
}
|
|
@ -7,7 +7,6 @@ import java.util.logging.Logger;
|
|||
import mekanism.api.InfusionInput;
|
||||
import mekanism.api.InfusionOutput;
|
||||
import mekanism.api.InfusionType;
|
||||
import mekanism.api.ItemMachineUpgrade;
|
||||
import mekanism.api.Tier.EnergyCubeTier;
|
||||
import mekanism.client.SoundHandler;
|
||||
import net.minecraft.block.Block;
|
||||
|
@ -45,7 +44,7 @@ import cpw.mods.fml.relauncher.SideOnly;
|
|||
* @author AidanBrady
|
||||
*
|
||||
*/
|
||||
@Mod(modid = "Mekanism", name = "Mekanism", version = "5.0.7")
|
||||
@Mod(modid = "Mekanism", name = "Mekanism", version = "5.0.9")
|
||||
@NetworkMod(channels = {"Mekanism"}, clientSideRequired = true, serverSideRequired = false, packetHandler = PacketHandler.class)
|
||||
public class Mekanism
|
||||
{
|
||||
|
@ -67,7 +66,7 @@ public class Mekanism
|
|||
public static Configuration configuration;
|
||||
|
||||
/** Mekanism version number */
|
||||
public static Version versionNumber = new Version(5, 0, 7);
|
||||
public static Version versionNumber = new Version(5, 0, 9);
|
||||
|
||||
/** Mekanism creative tab */
|
||||
public static CreativeTabMekanism tabMekanism = new CreativeTabMekanism();
|
||||
|
@ -199,16 +198,16 @@ public class Mekanism
|
|||
"RCR", "ECE", "RCR", Character.valueOf('C'), Item.ingotGold, Character.valueOf('R'), Item.redstone, Character.valueOf('E'), EnrichedAlloy
|
||||
}));
|
||||
CraftingManager.getInstance().getRecipeList().add(new ShapedOreRecipe(new ItemStack(MachineBlock, 1, 0), new Object[] {
|
||||
"ARA", "CIC", "ARA", Character.valueOf('A'), EnrichedAlloy, Character.valueOf('R'), Item.redstone, Character.valueOf('I'), new ItemStack(BasicBlock, 1, 5), Character.valueOf('C'), ControlCircuit
|
||||
"ARA", "CIC", "ARA", Character.valueOf('A'), EnrichedAlloy, Character.valueOf('R'), Item.redstone, Character.valueOf('I'), "blockSteel", Character.valueOf('C'), ControlCircuit
|
||||
}));
|
||||
CraftingManager.getInstance().getRecipeList().add(new ShapedOreRecipe(new ItemStack(MachineBlock, 1, 1), new Object[] {
|
||||
"RCR", "GIG", "RCR", Character.valueOf('R'), Item.redstone, Character.valueOf('C'), ControlCircuit, Character.valueOf('G'), Block.glass, Character.valueOf('I'), new ItemStack(BasicBlock, 1, 5)
|
||||
"RCR", "GIG", "RCR", Character.valueOf('R'), Item.redstone, Character.valueOf('C'), ControlCircuit, Character.valueOf('G'), Block.glass, Character.valueOf('I'), "blockSteel"
|
||||
}));
|
||||
CraftingManager.getInstance().getRecipeList().add(new ShapedOreRecipe(new ItemStack(MachineBlock, 1, 2), new Object[] {
|
||||
"SCS", "RIR", "SCS", Character.valueOf('S'), Block.cobblestone, Character.valueOf('C'), ControlCircuit, Character.valueOf('R'), Item.redstone, Character.valueOf('I'), new ItemStack(BasicBlock, 1, 5)
|
||||
"SCS", "RIR", "SCS", Character.valueOf('S'), Block.cobblestone, Character.valueOf('C'), ControlCircuit, Character.valueOf('R'), Item.redstone, Character.valueOf('I'), "blockSteel"
|
||||
}));
|
||||
CraftingManager.getInstance().getRecipeList().add(new ShapedOreRecipe(new ItemStack(MachineBlock, 1, 3), new Object[] {
|
||||
"RLR", "CIC", "RLR", Character.valueOf('R'), Item.redstone, Character.valueOf('L'), Item.bucketLava, Character.valueOf('C'), ControlCircuit, Character.valueOf('I'), new ItemStack(BasicBlock, 1, 5)
|
||||
"RLR", "CIC", "RLR", Character.valueOf('R'), Item.redstone, Character.valueOf('L'), Item.bucketLava, Character.valueOf('C'), ControlCircuit, Character.valueOf('I'), "blockSteel"
|
||||
}));
|
||||
CraftingManager.getInstance().getRecipeList().add(new ShapedOreRecipe(new ItemStack(SpeedUpgrade), new Object[] {
|
||||
"PAP", "AEA", "PAP", Character.valueOf('P'), "dustPlatinum", Character.valueOf('A'), EnrichedAlloy, Character.valueOf('E'), Item.emerald
|
||||
|
@ -256,7 +255,7 @@ public class Mekanism
|
|||
"T", "I", "T", Character.valueOf('T'), "dustTin", Character.valueOf('I'), Item.ingotIron
|
||||
}));
|
||||
CraftingManager.getInstance().getRecipeList().add(new ShapedOreRecipe(new ItemStack(MachineBlock, 1, 5), new Object[] {
|
||||
"CAC", "GIG", "CAC", Character.valueOf('C'), ControlCircuit, Character.valueOf('A'), EnrichedAlloy, Character.valueOf('G'), "dustGold", Character.valueOf('I'), new ItemStack(BasicBlock, 1, 5)
|
||||
"CAC", "GIG", "CAC", Character.valueOf('C'), ControlCircuit, Character.valueOf('A'), EnrichedAlloy, Character.valueOf('G'), "dustGold", Character.valueOf('I'), "blockSteel"
|
||||
}));
|
||||
CraftingManager.getInstance().getRecipeList().add(new ShapedOreRecipe(new ItemStack(MachineBlock, 1, 6), new Object[] {
|
||||
"CAC", "DFD", "CAC", Character.valueOf('C'), ControlCircuit, Character.valueOf('A'), EnrichedAlloy, Character.valueOf('D'), "dustDiamond", Character.valueOf('F'), new ItemStack(MachineBlock, 1, 5)
|
||||
|
@ -295,7 +294,7 @@ public class Mekanism
|
|||
RecipeHandler.addPlatinumCompressorRecipe(new ItemStack(Item.lightStoneDust), new ItemStack(Ingot, 1, 3));
|
||||
|
||||
//Combiner Recipes
|
||||
RecipeHandler.addCombinerRecipe(new ItemStack(Item.redstone, 4), new ItemStack(Block.oreRedstone));
|
||||
RecipeHandler.addCombinerRecipe(new ItemStack(Item.redstone, 10), new ItemStack(Block.oreRedstone));
|
||||
RecipeHandler.addCombinerRecipe(new ItemStack(Item.redstone), new ItemStack(Ingot, 1, 2));
|
||||
RecipeHandler.addCombinerRecipe(new ItemStack(Item.diamond), new ItemStack(Block.oreDiamond));
|
||||
RecipeHandler.addCombinerRecipe(new ItemStack(Item.dyePowder, 4, 4), new ItemStack(Block.oreLapis));
|
||||
|
@ -378,6 +377,8 @@ public class Mekanism
|
|||
LanguageRegistry.instance().addStringLocalization("item.obsidianDust.name", "Obsidian Dust");
|
||||
LanguageRegistry.instance().addStringLocalization("item.diamondDust.name", "Diamond Dust");
|
||||
LanguageRegistry.instance().addStringLocalization("item.steelDust.name", "Steel Dust");
|
||||
LanguageRegistry.instance().addStringLocalization("item.copperDust.name", "Copper Dust");
|
||||
LanguageRegistry.instance().addStringLocalization("item.tinDust.name", "Tin Dust");
|
||||
|
||||
//Localization for Ingot
|
||||
LanguageRegistry.instance().addStringLocalization("item.obsidianIngot.name", "Obsidian Ingot");
|
||||
|
@ -420,25 +421,27 @@ public class Mekanism
|
|||
*/
|
||||
public void addItems()
|
||||
{
|
||||
ElectricBow = (ItemElectricBow) new ItemElectricBow(11200).setItemName("ElectricBow");
|
||||
configuration.load();
|
||||
ElectricBow = (ItemElectricBow) new ItemElectricBow(configuration.getItem("ElectricBow", 11200).getInt()).setItemName("ElectricBow");
|
||||
if(extrasEnabled == true)
|
||||
{
|
||||
Stopwatch = new ItemStopwatch(11202).setItemName("Stopwatch");
|
||||
WeatherOrb = new ItemWeatherOrb(11203).setItemName("WeatherOrb");
|
||||
Stopwatch = new ItemStopwatch(configuration.getItem("Stopwatch", 11202).getInt()).setItemName("Stopwatch");
|
||||
WeatherOrb = new ItemWeatherOrb(configuration.getItem("WeatherOrb", 11203).getInt()).setItemName("WeatherOrb");
|
||||
}
|
||||
Dust = new ItemDust(11204-256);
|
||||
Ingot = new ItemIngot(11205-256);
|
||||
EnergyTablet = (ItemEnergized) new ItemEnergized(11206, 250000, 800, 2500).setItemName("EnergyTablet");
|
||||
SpeedUpgrade = new ItemMachineUpgrade(11207, 0, 150).setItemName("SpeedUpgrade");
|
||||
EnergyUpgrade = new ItemMachineUpgrade(11208, 1000, 0).setItemName("EnergyUpgrade");
|
||||
UltimateUpgrade = new ItemMachineUpgrade(11209, 2500, 180).setItemName("UltimateUpgrade");
|
||||
AtomicDisassembler = (ItemAtomicDisassembler) new ItemAtomicDisassembler(11210).setItemName("AtomicDisassembler");
|
||||
AtomicCore = new ItemMekanism(11211).setItemName("AtomicCore");
|
||||
EnrichedAlloy = new ItemMekanism(11212).setItemName("EnrichedAlloy");
|
||||
StorageTank = (ItemStorageTank) new ItemStorageTank(11213, 1600, 16, 16).setItemName("StorageTank");
|
||||
ControlCircuit = new ItemMekanism(11214).setItemName("ControlCircuit");
|
||||
EnrichedIron = new ItemMekanism(11215).setItemName("EnrichedIron");
|
||||
CompressedCarbon = new ItemMekanism(11216).setItemName("CompressedCarbon");
|
||||
Dust = new ItemDust(configuration.getItem("Dust", 11204).getInt()-256);
|
||||
Ingot = new ItemIngot(configuration.getItem("Ingot", 11205).getInt()-256);
|
||||
EnergyTablet = (ItemEnergized) new ItemEnergized(configuration.getItem("EnergyTablet", 11206).getInt(), 250000, 800, 2500).setItemName("EnergyTablet");
|
||||
SpeedUpgrade = new ItemMachineUpgrade(configuration.getItem("SpeedUpgrade", 11207).getInt(), 0, 150).setItemName("SpeedUpgrade");
|
||||
EnergyUpgrade = new ItemMachineUpgrade(configuration.getItem("EnergyUpgrade", 11208).getInt(), 1000, 0).setItemName("EnergyUpgrade");
|
||||
UltimateUpgrade = new ItemMachineUpgrade(configuration.getItem("UltimateUpgrade", 11209).getInt(), 2500, 180).setItemName("UltimateUpgrade");
|
||||
AtomicDisassembler = (ItemAtomicDisassembler) new ItemAtomicDisassembler(configuration.getItem("AtomicDisassembler", 11210).getInt()).setItemName("AtomicDisassembler");
|
||||
AtomicCore = new ItemMekanism(configuration.getItem("AtomicCore", 11211).getInt()).setItemName("AtomicCore");
|
||||
EnrichedAlloy = new ItemMekanism(configuration.getItem("EnrichedAlloy", 11212).getInt()).setItemName("EnrichedAlloy");
|
||||
StorageTank = (ItemStorageTank) new ItemStorageTank(configuration.getItem("StorageTank", 11213).getInt(), 1600, 16, 16).setItemName("StorageTank");
|
||||
ControlCircuit = new ItemMekanism(configuration.getItem("ControlCircuit", 11214).getInt()).setItemName("ControlCircuit");
|
||||
EnrichedIron = new ItemMekanism(configuration.getItem("EnrichedIron", 11215).getInt()).setItemName("EnrichedIron");
|
||||
CompressedCarbon = new ItemMekanism(configuration.getItem("CompressedCarbon", 11216).getInt()).setItemName("CompressedCarbon");
|
||||
configuration.save();
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -479,6 +482,8 @@ public class Mekanism
|
|||
OreDictionary.registerOre("dustObsidian", new ItemStack(Dust, 1, 3));
|
||||
OreDictionary.registerOre("dustDiamond", new ItemStack(Dust, 1, 4));
|
||||
OreDictionary.registerOre("dustSteel", new ItemStack(Dust, 1, 5));
|
||||
OreDictionary.registerOre("dustCopper", new ItemStack(Dust, 1, 6));
|
||||
OreDictionary.registerOre("dustTin", new ItemStack(Dust, 1, 7));
|
||||
|
||||
OreDictionary.registerOre("ingotObsidian", new ItemStack(Ingot, 1, 0));
|
||||
OreDictionary.registerOre("ingotPlatinum", new ItemStack(Ingot, 1, 1));
|
||||
|
@ -486,6 +491,13 @@ public class Mekanism
|
|||
OreDictionary.registerOre("ingotGlowstone", new ItemStack(Ingot, 1, 3));
|
||||
OreDictionary.registerOre("ingotSteel", new ItemStack(Ingot, 1, 4));
|
||||
|
||||
OreDictionary.registerOre("blockPlatinum", new ItemStack(BasicBlock, 1, 0));
|
||||
OreDictionary.registerOre("blockBronze", new ItemStack(BasicBlock, 1, 1));
|
||||
OreDictionary.registerOre("blockRefinedObsidian", new ItemStack(BasicBlock, 1, 2));
|
||||
OreDictionary.registerOre("blockCoal", new ItemStack(BasicBlock, 1, 3));
|
||||
OreDictionary.registerOre("blockRefinedGlowstone", new ItemStack(BasicBlock, 1, 4));
|
||||
OreDictionary.registerOre("blockSteel", new ItemStack(BasicBlock, 1, 5));
|
||||
|
||||
OreDictionary.registerOre("orePlatinum", new ItemStack(OreBlock, 1, 0));
|
||||
|
||||
if(hooks.IC2Loaded)
|
||||
|
@ -496,16 +508,16 @@ public class Mekanism
|
|||
}
|
||||
|
||||
RecipeHandler.addCrusherRecipe(new ItemStack(Item.coal), hooks.IC2CoalDust);
|
||||
|
||||
for(ItemStack ore : OreDictionary.getOres("oreCopper"))
|
||||
{
|
||||
RecipeHandler.addEnrichmentChamberRecipe(ore, MekanismUtils.getStackWithSize(hooks.IC2CopperDust, 2));
|
||||
}
|
||||
|
||||
for(ItemStack ore : OreDictionary.getOres("oreTin"))
|
||||
{
|
||||
RecipeHandler.addEnrichmentChamberRecipe(ore, MekanismUtils.getStackWithSize(hooks.IC2TinDust, 2));
|
||||
}
|
||||
}
|
||||
|
||||
for(ItemStack ore : OreDictionary.getOres("oreCopper"))
|
||||
{
|
||||
RecipeHandler.addEnrichmentChamberRecipe(ore, new ItemStack(Dust, 2, 6));
|
||||
}
|
||||
|
||||
for(ItemStack ore : OreDictionary.getOres("oreTin"))
|
||||
{
|
||||
RecipeHandler.addEnrichmentChamberRecipe(ore, new ItemStack(Dust, 2, 7));
|
||||
}
|
||||
|
||||
for(ItemStack ore : OreDictionary.getOres("orePlatinum"))
|
||||
|
@ -557,11 +569,6 @@ public class Mekanism
|
|||
RecipeHandler.addCrusherRecipe(ore, new ItemStack(Item.lightStoneDust));
|
||||
}
|
||||
|
||||
for(ItemStack ore : OreDictionary.getOres("ingotSteel"))
|
||||
{
|
||||
RecipeHandler.addEnrichmentChamberRecipe(ore, new ItemStack(Ingot, 1, 4));
|
||||
}
|
||||
|
||||
try {
|
||||
for(ItemStack ore : OreDictionary.getOres("ingotCopper"))
|
||||
{
|
||||
|
|
|
@ -72,7 +72,6 @@ public final class MekanismHooks
|
|||
Ic2Recipes.addMaceratorRecipe(new ItemStack(Mekanism.Ingot, 1, 3), new ItemStack(Item.lightStoneDust));
|
||||
Ic2Recipes.addMaceratorRecipe(new ItemStack(Mekanism.Ingot, 1, 4), new ItemStack(Mekanism.Dust, 1, 5));
|
||||
Ic2Recipes.addMatterAmplifier(Mekanism.EnrichedAlloy, 100000);
|
||||
|
||||
System.out.println("[Mekanism] Hooked into IC2 successfully.");
|
||||
}
|
||||
if(RailcraftLoaded)
|
||||
|
@ -83,6 +82,8 @@ public final class MekanismHooks
|
|||
{
|
||||
RecipeHelper.removeRecipes(getBasicComponentsItem("itemSteelDust"));
|
||||
RecipeHelper.removeRecipes(getBasicComponentsItem("itemSteelIngot"));
|
||||
RecipeHelper.removeRecipes(getBasicComponentsItem("itemBronzeDust"));
|
||||
RecipeHelper.removeRecipes(getBasicComponentsItem("itemBronzeIngot"));
|
||||
System.out.println("[Mekanism] Hooked into BasicComponents successfully.");
|
||||
}
|
||||
if(BuildCraftLoaded)
|
||||
|
|
|
@ -17,6 +17,7 @@ import net.minecraft.tileentity.TileEntity;
|
|||
import net.minecraft.world.IBlockAccess;
|
||||
import net.minecraft.world.World;
|
||||
import net.minecraftforge.common.ForgeDirection;
|
||||
import net.minecraftforge.common.MinecraftForge;
|
||||
import net.minecraftforge.oredict.OreDictionary;
|
||||
import net.minecraftforge.oredict.ShapedOreRecipe;
|
||||
import cpw.mods.fml.server.FMLServerHandler;
|
||||
|
@ -38,7 +39,7 @@ public final class MekanismUtils
|
|||
if(!Mekanism.latestVersionNumber.contains(Mekanism.versionNumber.toString()))
|
||||
{
|
||||
entityplayer.addChatMessage(EnumColor.GREY + "------------- " + EnumColor.DARK_BLUE + "[Mekanism]" + EnumColor.GREY + " -------------");
|
||||
entityplayer.addChatMessage(EnumColor.GREY + " Using outdated version " + EnumColor.DARK_GREY + Mekanism.versionNumber + EnumColor.GREY + " for Minecraft 1.4.2.");
|
||||
entityplayer.addChatMessage(EnumColor.GREY + " Using outdated version " + EnumColor.DARK_GREY + Mekanism.versionNumber + EnumColor.GREY + " for Minecraft 1.4.6/7.");
|
||||
entityplayer.addChatMessage(EnumColor.GREY + " Consider updating to version " + EnumColor.DARK_GREY + Mekanism.latestVersionNumber);
|
||||
entityplayer.addChatMessage(EnumColor.GREY + " New features: " + EnumColor.INDIGO + Mekanism.recentNews);
|
||||
entityplayer.addChatMessage(EnumColor.GREY + "------------- " + EnumColor.DARK_BLUE + "[=======]" + EnumColor.GREY + " -------------");
|
||||
|
|
|
@ -171,6 +171,17 @@ public class PacketHandler implements IPacketHandler
|
|||
{
|
||||
output.writeUTF((String)data);
|
||||
}
|
||||
else if(data instanceof Byte)
|
||||
{
|
||||
output.writeByte((Byte)data);
|
||||
}
|
||||
else if(data instanceof int[])
|
||||
{
|
||||
for(int i : (int[])data)
|
||||
{
|
||||
output.writeInt(i);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Packet250CustomPayload packet = new Packet250CustomPayload();
|
||||
|
@ -226,6 +237,10 @@ public class PacketHandler implements IPacketHandler
|
|||
{
|
||||
output.writeUTF((String)data);
|
||||
}
|
||||
else if(data instanceof Byte)
|
||||
{
|
||||
output.writeByte((Byte)data);
|
||||
}
|
||||
else if(data instanceof int[])
|
||||
{
|
||||
for(int i : (int[])data)
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
package mekanism.common;
|
||||
|
||||
import mekanism.api.ItemMachineUpgrade;
|
||||
import net.minecraft.inventory.IInventory;
|
||||
import net.minecraft.inventory.Slot;
|
||||
import net.minecraft.item.ItemStack;
|
||||
|
|
|
@ -82,28 +82,12 @@ public abstract class TileEntityBasicBlock extends TileEntityDisableable impleme
|
|||
@Override
|
||||
public void setFacing(short direction)
|
||||
{
|
||||
if(initialized)
|
||||
{
|
||||
if(Mekanism.hooks.IC2Loaded)
|
||||
{
|
||||
EnergyNet.getForWorld(worldObj).removeTileEntity(this);
|
||||
}
|
||||
}
|
||||
|
||||
initialized = false;
|
||||
|
||||
if(canSetFacing(direction))
|
||||
{
|
||||
facing = direction;
|
||||
}
|
||||
|
||||
sendPacket();
|
||||
|
||||
if(Mekanism.hooks.IC2Loaded)
|
||||
{
|
||||
EnergyNet.getForWorld(worldObj).addTileEntity(this);
|
||||
}
|
||||
initialized = true;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
|
||||
package mekanism.common;
|
||||
|
||||
import ic2.api.ElectricItem;
|
||||
|
|
|
@ -24,6 +24,7 @@ import net.minecraftforge.common.ForgeDirection;
|
|||
import net.minecraftforge.common.MinecraftForge;
|
||||
import universalelectricity.core.electricity.ElectricInfo;
|
||||
import universalelectricity.core.electricity.ElectricityConnections;
|
||||
import universalelectricity.core.electricity.ElectricityNetwork;
|
||||
import universalelectricity.core.implement.IConductor;
|
||||
import universalelectricity.core.implement.IItemElectric;
|
||||
import universalelectricity.core.implement.IJouleStorage;
|
||||
|
@ -196,7 +197,9 @@ public class TileEntityEnergyCube extends TileEntityElectricBlock implements IEn
|
|||
{
|
||||
if(electricityStored >= output)
|
||||
{
|
||||
MinecraftForge.EVENT_BUS.post(new EnergyTileSourceEvent(this, output));
|
||||
EnergyTileSourceEvent event = new EnergyTileSourceEvent(this, output);
|
||||
MinecraftForge.EVENT_BUS.post(event);
|
||||
setJoules(electricityStored - (output - event.amount));
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -210,20 +213,27 @@ public class TileEntityEnergyCube extends TileEntityElectricBlock implements IEn
|
|||
receptor.getPowerProvider().receiveEnergy((float)(transferEnergy*Mekanism.FROM_BC), ForgeDirection.getOrientation(facing).getOpposite());
|
||||
setJoules(electricityStored - (int)transferEnergy);
|
||||
}
|
||||
else if(tileEntity instanceof IConductor)
|
||||
{
|
||||
double joulesNeeded = ((IConductor)tileEntity).getNetwork().getRequest().getWatts();
|
||||
double transferAmps = Math.max(Math.min(Math.min(ElectricInfo.getAmps(joulesNeeded, getVoltage()), ElectricInfo.getAmps(electricityStored, getVoltage())), 80), 0);
|
||||
}
|
||||
}
|
||||
|
||||
if(!worldObj.isRemote)
|
||||
{
|
||||
ForgeDirection outputDirection = ForgeDirection.getOrientation(facing);
|
||||
TileEntity outputTile = Vector3.getTileEntityFromSide(worldObj, new Vector3(this), outputDirection);
|
||||
|
||||
if (!worldObj.isRemote && transferAmps > 0)
|
||||
{
|
||||
((IConductor)tileEntity).getNetwork().startProducing(this, transferAmps, getVoltage());
|
||||
setJoules(electricityStored - ElectricInfo.getWatts(transferAmps, getVoltage()));
|
||||
}
|
||||
else
|
||||
{
|
||||
((IConductor)tileEntity).getNetwork().stopProducing(this);
|
||||
}
|
||||
ElectricityNetwork outputNetwork = ElectricityNetwork.getNetworkFromTileEntity(outputTile, outputDirection);
|
||||
|
||||
if(outputNetwork != null)
|
||||
{
|
||||
double outputWatts = Math.min(outputNetwork.getRequest().getWatts(), Math.min(getJoules(), 10000));
|
||||
|
||||
if(getJoules() > 0 && outputWatts > 0)
|
||||
{
|
||||
outputNetwork.startProducing(this, outputWatts / getVoltage(), getVoltage());
|
||||
setJoules(electricityStored - outputWatts);
|
||||
}
|
||||
else {
|
||||
outputNetwork.stopProducing(this);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -8,6 +8,7 @@ import ic2.api.IElectricItem;
|
|||
import ic2.api.energy.tile.IEnergySink;
|
||||
import mekanism.api.IActiveState;
|
||||
import mekanism.api.Tier.SmeltingFactoryTier;
|
||||
import mekanism.client.Sound;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.item.ItemStack;
|
||||
|
@ -27,6 +28,10 @@ import universalelectricity.core.vector.Vector3;
|
|||
|
||||
import com.google.common.io.ByteArrayDataInput;
|
||||
|
||||
import cpw.mods.fml.client.FMLClientHandler;
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
|
||||
import dan200.computer.api.IComputerAccess;
|
||||
import dan200.computer.api.IPeripheral;
|
||||
|
||||
|
@ -35,6 +40,10 @@ public class TileEntitySmeltingFactory extends TileEntityElectricBlock implement
|
|||
/** This Smelting Factory's tier. */
|
||||
public SmeltingFactoryTier tier;
|
||||
|
||||
/** The Sound instance for this machine. */
|
||||
@SideOnly(Side.CLIENT)
|
||||
public Sound audio;
|
||||
|
||||
/** An int[] used to track all current operations' progress. */
|
||||
public int[] progress;
|
||||
|
||||
|
@ -78,6 +87,16 @@ public class TileEntitySmeltingFactory extends TileEntityElectricBlock implement
|
|||
{
|
||||
super.onUpdate();
|
||||
|
||||
if(worldObj.isRemote)
|
||||
{
|
||||
try {
|
||||
synchronized(Mekanism.audioHandler.sounds)
|
||||
{
|
||||
handleSound();
|
||||
}
|
||||
} catch(NoSuchMethodError e) {}
|
||||
}
|
||||
|
||||
if(powerProvider != null)
|
||||
{
|
||||
int received = (int)(powerProvider.useEnergy(0, (float)((currentMaxElectricity-electricityStored)*Mekanism.TO_BC), true)*10);
|
||||
|
@ -274,6 +293,44 @@ public class TileEntitySmeltingFactory extends TileEntityElectricBlock implement
|
|||
}
|
||||
}
|
||||
|
||||
@SideOnly(Side.CLIENT)
|
||||
public void handleSound()
|
||||
{
|
||||
synchronized(Mekanism.audioHandler.sounds)
|
||||
{
|
||||
if(audio == null && worldObj != null && worldObj.isRemote)
|
||||
{
|
||||
if(FMLClientHandler.instance().getClient().sndManager.sndSystem != null)
|
||||
{
|
||||
audio = Mekanism.audioHandler.getSound("SmeltingFactory.ogg", worldObj, xCoord, yCoord, zCoord);
|
||||
}
|
||||
}
|
||||
|
||||
if(worldObj != null && worldObj.isRemote && audio != null)
|
||||
{
|
||||
if(!audio.isPlaying && isActive == true)
|
||||
{
|
||||
audio.play();
|
||||
}
|
||||
else if(audio.isPlaying && isActive == false)
|
||||
{
|
||||
audio.stop();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void invalidate()
|
||||
{
|
||||
super.invalidate();
|
||||
|
||||
if(worldObj.isRemote && audio != null)
|
||||
{
|
||||
audio.remove();
|
||||
}
|
||||
}
|
||||
|
||||
public int getScaledProgress(int i, int process)
|
||||
{
|
||||
return progress[process]*i / currentTicksRequired;
|
||||
|
|
|
@ -34,16 +34,40 @@ public class GuiElectrolyticSeparator extends GuiContainer
|
|||
{
|
||||
String nameToSet = "";
|
||||
|
||||
if(tileEntity.outputType == EnumGas.OXYGEN)
|
||||
{
|
||||
nameToSet = EnumGas.HYDROGEN.name;
|
||||
}
|
||||
else if(tileEntity.outputType == EnumGas.HYDROGEN)
|
||||
if(tileEntity.outputType == EnumGas.HYDROGEN)
|
||||
{
|
||||
nameToSet = EnumGas.OXYGEN.name;
|
||||
}
|
||||
else if(tileEntity.outputType == EnumGas.OXYGEN)
|
||||
{
|
||||
nameToSet = EnumGas.NONE.name;
|
||||
}
|
||||
else if(tileEntity.outputType == EnumGas.NONE)
|
||||
{
|
||||
nameToSet = EnumGas.HYDROGEN.name;
|
||||
}
|
||||
|
||||
PacketHandler.sendTileEntityPacketToServer(tileEntity, nameToSet);
|
||||
PacketHandler.sendTileEntityPacketToServer(tileEntity, (byte)0, nameToSet);
|
||||
mc.sndManager.playSoundFX("random.click", 1.0F, 1.0F);
|
||||
}
|
||||
else if(xAxis > 8 && xAxis < 17 && yAxis > 73 && yAxis < 82)
|
||||
{
|
||||
String nameToSet = "";
|
||||
|
||||
if(tileEntity.dumpType == EnumGas.NONE)
|
||||
{
|
||||
nameToSet = EnumGas.OXYGEN.name;
|
||||
}
|
||||
else if(tileEntity.dumpType == EnumGas.OXYGEN)
|
||||
{
|
||||
nameToSet = EnumGas.HYDROGEN.name;
|
||||
}
|
||||
else if(tileEntity.dumpType == EnumGas.HYDROGEN)
|
||||
{
|
||||
nameToSet = EnumGas.NONE.name;
|
||||
}
|
||||
|
||||
PacketHandler.sendTileEntityPacketToServer(tileEntity, (byte)1, nameToSet);
|
||||
mc.sndManager.playSoundFX("random.click", 1.0F, 1.0F);
|
||||
}
|
||||
}
|
||||
|
@ -52,8 +76,8 @@ public class GuiElectrolyticSeparator extends GuiContainer
|
|||
protected void drawGuiContainerForegroundLayer(int par1, int par2)
|
||||
{
|
||||
fontRenderer.drawString(tileEntity.fullName, 45, 6, 0x404040);
|
||||
fontRenderer.drawString("Inventory", 8, (ySize - 96) + 2, 0x404040);
|
||||
fontRenderer.drawString("Output", 124, 73, 0x404040);
|
||||
fontRenderer.drawString("Dump", 21, 73, 0x404040);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -66,7 +90,11 @@ public class GuiElectrolyticSeparator extends GuiContainer
|
|||
guiHeight = (height - ySize) / 2;
|
||||
drawTexturedModalRect(guiWidth, guiHeight, 0, 0, xSize, ySize);
|
||||
|
||||
drawTexturedModalRect(guiWidth + 160, guiHeight + 73, 176, (tileEntity.outputType == EnumGas.OXYGEN ? 82 : 90), 8, 8);
|
||||
int outputDisplay = tileEntity.outputType == EnumGas.OXYGEN ? 82 : (tileEntity.outputType == EnumGas.HYDROGEN ? 90 : 98);
|
||||
drawTexturedModalRect(guiWidth + 160, guiHeight + 73, 176, outputDisplay, 8, 8);
|
||||
|
||||
int dumpDisplay = tileEntity.dumpType == EnumGas.OXYGEN ? 82 : (tileEntity.dumpType == EnumGas.HYDROGEN ? 90 : 98);
|
||||
drawTexturedModalRect(guiWidth + 8, guiHeight + 73, 176, dumpDisplay, 8, 8);
|
||||
|
||||
int displayInt;
|
||||
|
||||
|
|
|
@ -20,7 +20,8 @@ public class RenderElectrolyticSeparator extends TileEntitySpecialRenderer
|
|||
{
|
||||
GL11.glPushMatrix();
|
||||
GL11.glTranslatef((float) x + 0.5f, (float) y + 1.5f, (float) z + 0.5f);
|
||||
bindTextureByName(tileEntity.outputType == EnumGas.HYDROGEN ? "/resources/mekanism/render/ElectrolyticSeparatorHydrogen.png" : "/resources/mekanism/render/ElectrolyticSeparatorOxygen.png");
|
||||
bindTextureByName(tileEntity.outputType == EnumGas.HYDROGEN ? "/resources/mekanism/render/ElectrolyticSeparatorHydrogen.png" :
|
||||
(tileEntity.outputType == EnumGas.OXYGEN ? "/resources/mekanism/render/ElectrolyticSeparatorOxygen.png" : "/resources/mekanism/render/ElectrolyticSeparatorNone.png"));
|
||||
|
||||
switch(tileEntity.facing)
|
||||
{
|
||||
|
|
|
@ -19,7 +19,7 @@ import cpw.mods.fml.common.network.NetworkRegistry;
|
|||
import cpw.mods.fml.common.registry.GameRegistry;
|
||||
import cpw.mods.fml.common.registry.LanguageRegistry;
|
||||
|
||||
@Mod(modid = "MekanismGenerators", name = "MekanismGenerators", version = "5.0.7", dependencies = "required-after:Mekanism")
|
||||
@Mod(modid = "MekanismGenerators", name = "MekanismGenerators", version = "5.0.9", dependencies = "required-after:Mekanism")
|
||||
@NetworkMod(clientSideRequired = true, serverSideRequired = false)
|
||||
public class MekanismGenerators
|
||||
{
|
||||
|
@ -75,13 +75,13 @@ public class MekanismGenerators
|
|||
"SES", "SES", "III", Character.valueOf('S'), new ItemStack(Generator, 1, 1), Character.valueOf('E'), Mekanism.EnrichedAlloy, Character.valueOf('I'), Item.ingotIron
|
||||
}));
|
||||
CraftingManager.getInstance().getRecipeList().add(new ShapedOreRecipe(new ItemStack(Generator, 1, 4), new Object[] {
|
||||
"RER", "BIB", "NEN", Character.valueOf('R'), Item.redstone, Character.valueOf('E'), Mekanism.EnrichedAlloy, Character.valueOf('B'), BioFuel, Character.valueOf('I'), new ItemStack(Mekanism.BasicBlock, 1, 5), Character.valueOf('N'), Item.ingotIron
|
||||
"RER", "BIB", "NEN", Character.valueOf('R'), Item.redstone, Character.valueOf('E'), Mekanism.EnrichedAlloy, Character.valueOf('B'), BioFuel, Character.valueOf('I'), "blockSteel", Character.valueOf('N'), Item.ingotIron
|
||||
}));
|
||||
CraftingManager.getInstance().getRecipeList().add(new ShapedOreRecipe(new ItemStack(Generator, 1, 2), new Object[] {
|
||||
"IRI", "ECE", "IRI", Character.valueOf('I'), Item.ingotIron, Character.valueOf('R'), Item.redstone, Character.valueOf('E'), Mekanism.EnrichedAlloy, Character.valueOf('C'), ElectrolyticCore
|
||||
}));
|
||||
CraftingManager.getInstance().getRecipeList().add(new ShapedOreRecipe(new ItemStack(Generator, 1, 3), new Object[] {
|
||||
"PEP", "ICI", "PEP", Character.valueOf('P'), "ingotPlatinum", Character.valueOf('E'), Mekanism.EnrichedAlloy, Character.valueOf('I'), new ItemStack(Mekanism.BasicBlock, 1, 5), Character.valueOf('C'), ElectrolyticCore
|
||||
"PEP", "ICI", "PEP", Character.valueOf('P'), "ingotPlatinum", Character.valueOf('E'), Mekanism.EnrichedAlloy, Character.valueOf('I'), "blockSteel", Character.valueOf('C'), ElectrolyticCore
|
||||
}));
|
||||
CraftingManager.getInstance().getRecipeList().add(new ShapedOreRecipe(new ItemStack(ElectrolyticCore), new Object[] {
|
||||
"EPE", "IEG", "EPE", Character.valueOf('E'), Mekanism.EnrichedAlloy, Character.valueOf('P'), "dustPlatinum", Character.valueOf('I'), "dustIron", Character.valueOf('G'), "dustGold"
|
||||
|
@ -143,8 +143,10 @@ public class MekanismGenerators
|
|||
|
||||
public void addItems()
|
||||
{
|
||||
SolarPanel = new ItemMekanism(11300).setItemName("SolarPanel");
|
||||
BioFuel = new ItemMekanism(11301).setItemName("BioFuel");
|
||||
ElectrolyticCore = new ItemMekanism(11302).setItemName("ElectrolyticCore");
|
||||
Mekanism.configuration.load();
|
||||
SolarPanel = new ItemMekanism(Mekanism.configuration.getItem("SolarPanel", 11300).getInt()).setItemName("SolarPanel");
|
||||
BioFuel = new ItemMekanism(Mekanism.configuration.getItem("BioFuel", 11301).getInt()).setItemName("BioFuel");
|
||||
ElectrolyticCore = new ItemMekanism(Mekanism.configuration.getItem("ElectrolyticCore", 11302).getInt()).setItemName("ElectrolyticCore");
|
||||
Mekanism.configuration.save();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -60,6 +60,9 @@ public class TileEntityElectrolyticSeparator extends TileEntityElectricBlock imp
|
|||
|
||||
/** The type of gas this block is outputting. */
|
||||
public EnumGas outputType;
|
||||
|
||||
/** Type type of gas this block is dumping. */
|
||||
public EnumGas dumpType;
|
||||
|
||||
public TileEntityElectrolyticSeparator()
|
||||
{
|
||||
|
@ -67,6 +70,7 @@ public class TileEntityElectrolyticSeparator extends TileEntityElectricBlock imp
|
|||
ElectricityConnections.registerConnector(this, EnumSet.allOf(ForgeDirection.class));
|
||||
inventory = new ItemStack[4];
|
||||
outputType = EnumGas.HYDROGEN;
|
||||
dumpType = EnumGas.NONE;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -227,7 +231,7 @@ public class TileEntityElectrolyticSeparator extends TileEntityElectricBlock imp
|
|||
setGas(EnumGas.HYDROGEN, hydrogenStored + 1);
|
||||
}
|
||||
|
||||
if(hydrogenStored > 0 && !worldObj.isRemote)
|
||||
if(outputType != EnumGas.NONE && getGas(outputType) > 0 && !worldObj.isRemote)
|
||||
{
|
||||
TileEntity tileEntity = Vector3.getTileEntityFromSide(worldObj, new Vector3(this), ForgeDirection.getOrientation(facing));
|
||||
|
||||
|
@ -251,6 +255,11 @@ public class TileEntityElectrolyticSeparator extends TileEntityElectricBlock imp
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
if(dumpType != EnumGas.NONE && getGas(dumpType) > 0)
|
||||
{
|
||||
setGas(dumpType, (getGas(dumpType) - 8));
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -324,13 +333,25 @@ public class TileEntityElectrolyticSeparator extends TileEntityElectricBlock imp
|
|||
if(!worldObj.isRemote)
|
||||
{
|
||||
try {
|
||||
outputType = EnumGas.getFromName(dataStream.readUTF());
|
||||
byte type = dataStream.readByte();
|
||||
|
||||
if(type == 0)
|
||||
{
|
||||
outputType = EnumGas.getFromName(dataStream.readUTF());
|
||||
return;
|
||||
}
|
||||
else if(type == 1)
|
||||
{
|
||||
dumpType = EnumGas.getFromName(dataStream.readUTF());
|
||||
return;
|
||||
}
|
||||
|
||||
} catch (Exception e)
|
||||
{
|
||||
System.out.println("[Mekanism] Error while handling tile entity packet.");
|
||||
e.printStackTrace();
|
||||
return;
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
try {
|
||||
|
@ -340,6 +361,7 @@ public class TileEntityElectrolyticSeparator extends TileEntityElectricBlock imp
|
|||
oxygenStored = dataStream.readInt();
|
||||
hydrogenStored = dataStream.readInt();
|
||||
outputType = EnumGas.getFromName(dataStream.readUTF());
|
||||
dumpType = EnumGas.getFromName(dataStream.readUTF());
|
||||
worldObj.markBlockForRenderUpdate(xCoord, yCoord, zCoord);
|
||||
} catch (Exception e)
|
||||
{
|
||||
|
@ -351,13 +373,13 @@ public class TileEntityElectrolyticSeparator extends TileEntityElectricBlock imp
|
|||
@Override
|
||||
public void sendPacket()
|
||||
{
|
||||
PacketHandler.sendTileEntityPacketToClients(this, 0, facing, electricityStored, waterSlot.liquidStored, oxygenStored, hydrogenStored, outputType.name);
|
||||
PacketHandler.sendTileEntityPacketToClients(this, 0, facing, electricityStored, waterSlot.liquidStored, oxygenStored, hydrogenStored, outputType.name, dumpType.name);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void sendPacketWithRange()
|
||||
{
|
||||
PacketHandler.sendTileEntityPacketToClients(this, 50, facing, electricityStored, waterSlot.liquidStored, oxygenStored, hydrogenStored, outputType.name);
|
||||
PacketHandler.sendTileEntityPacketToClients(this, 50, facing, electricityStored, waterSlot.liquidStored, oxygenStored, hydrogenStored, outputType.name, dumpType.name);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -521,6 +543,7 @@ public class TileEntityElectrolyticSeparator extends TileEntityElectricBlock imp
|
|||
oxygenStored = nbtTags.getInteger("oxygenStored");
|
||||
waterSlot.liquidStored = nbtTags.getInteger("waterStored");
|
||||
outputType = EnumGas.getFromName(nbtTags.getString("outputType"));
|
||||
dumpType = EnumGas.getFromName(nbtTags.getString("dumpType"));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -532,6 +555,7 @@ public class TileEntityElectrolyticSeparator extends TileEntityElectricBlock imp
|
|||
nbtTags.setInteger("oxygenStored", oxygenStored);
|
||||
nbtTags.setInteger("waterStored", waterSlot.liquidStored);
|
||||
nbtTags.setString("outputType", outputType.name);
|
||||
nbtTags.setString("dumpType", dumpType.name);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -8,7 +8,12 @@ import ic2.api.energy.tile.IEnergySource;
|
|||
|
||||
import java.util.EnumSet;
|
||||
|
||||
import cpw.mods.fml.client.FMLClientHandler;
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
|
||||
import mekanism.api.IActiveState;
|
||||
import mekanism.client.Sound;
|
||||
import mekanism.common.Mekanism;
|
||||
import mekanism.common.TileEntityElectricBlock;
|
||||
import net.minecraft.nbt.NBTTagCompound;
|
||||
|
@ -17,6 +22,7 @@ import net.minecraftforge.common.ForgeDirection;
|
|||
import net.minecraftforge.common.MinecraftForge;
|
||||
import universalelectricity.core.electricity.ElectricInfo;
|
||||
import universalelectricity.core.electricity.ElectricityConnections;
|
||||
import universalelectricity.core.electricity.ElectricityNetwork;
|
||||
import universalelectricity.core.implement.IConductor;
|
||||
import universalelectricity.core.implement.IJouleStorage;
|
||||
import universalelectricity.core.implement.IVoltage;
|
||||
|
@ -29,6 +35,10 @@ import dan200.computer.api.IPeripheral;
|
|||
|
||||
public abstract class TileEntityGenerator extends TileEntityElectricBlock implements IEnergySource, IEnergyStorage, IPowerReceptor, IJouleStorage, IVoltage, IPeripheral, IActiveState
|
||||
{
|
||||
/** The Sound instance for this generator. */
|
||||
@SideOnly(Side.CLIENT)
|
||||
public Sound audio;
|
||||
|
||||
/** Output per tick this generator can transfer. */
|
||||
public int output;
|
||||
|
||||
|
@ -57,6 +67,16 @@ public abstract class TileEntityGenerator extends TileEntityElectricBlock implem
|
|||
{
|
||||
super.onUpdate();
|
||||
|
||||
if(worldObj.isRemote)
|
||||
{
|
||||
try {
|
||||
synchronized(Mekanism.audioHandler.sounds)
|
||||
{
|
||||
handleSound();
|
||||
}
|
||||
} catch(NoSuchMethodError e) {}
|
||||
}
|
||||
|
||||
if(electricityStored > 0)
|
||||
{
|
||||
TileEntity tileEntity = Vector3.getTileEntityFromSide(worldObj, new Vector3(this), ForgeDirection.getOrientation(facing));
|
||||
|
@ -65,7 +85,9 @@ public abstract class TileEntityGenerator extends TileEntityElectricBlock implem
|
|||
{
|
||||
if(electricityStored >= output)
|
||||
{
|
||||
MinecraftForge.EVENT_BUS.post(new EnergyTileSourceEvent(this, output));
|
||||
EnergyTileSourceEvent event = new EnergyTileSourceEvent(this, output);
|
||||
MinecraftForge.EVENT_BUS.post(event);
|
||||
setJoules(electricityStored - (output - event.amount));
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -79,25 +101,70 @@ public abstract class TileEntityGenerator extends TileEntityElectricBlock implem
|
|||
receptor.getPowerProvider().receiveEnergy((float)(transferEnergy*Mekanism.TO_BC), ForgeDirection.getOrientation(facing).getOpposite());
|
||||
setJoules(electricityStored - (int)transferEnergy);
|
||||
}
|
||||
else if(tileEntity instanceof IConductor)
|
||||
{
|
||||
double joulesNeeded = ((IConductor)tileEntity).getNetwork().getRequest().getWatts();
|
||||
double transferAmps = Math.max(Math.min(Math.min(ElectricInfo.getAmps(joulesNeeded, getVoltage()), ElectricInfo.getAmps(electricityStored, getVoltage())), 80), 0);
|
||||
}
|
||||
}
|
||||
|
||||
if(!worldObj.isRemote)
|
||||
{
|
||||
ForgeDirection outputDirection = ForgeDirection.getOrientation(facing);
|
||||
TileEntity outputTile = Vector3.getTileEntityFromSide(worldObj, new Vector3(this), outputDirection);
|
||||
|
||||
if (!worldObj.isRemote && transferAmps > 0)
|
||||
{
|
||||
((IConductor)tileEntity).getNetwork().startProducing(this, transferAmps, getVoltage());
|
||||
setJoules(electricityStored - ElectricInfo.getWatts(transferAmps, getVoltage()));
|
||||
}
|
||||
else
|
||||
{
|
||||
((IConductor)tileEntity).getNetwork().stopProducing(this);
|
||||
}
|
||||
ElectricityNetwork outputNetwork = ElectricityNetwork.getNetworkFromTileEntity(outputTile, outputDirection);
|
||||
|
||||
if(outputNetwork != null)
|
||||
{
|
||||
double outputWatts = Math.min(outputNetwork.getRequest().getWatts(), Math.min(getJoules(), 10000));
|
||||
|
||||
if(getJoules() > 0 && outputWatts > 0)
|
||||
{
|
||||
outputNetwork.startProducing(this, outputWatts / getVoltage(), getVoltage());
|
||||
setJoules(electricityStored - outputWatts);
|
||||
}
|
||||
else {
|
||||
outputNetwork.stopProducing(this);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@SideOnly(Side.CLIENT)
|
||||
public void handleSound()
|
||||
{
|
||||
synchronized(Mekanism.audioHandler.sounds)
|
||||
{
|
||||
if(audio == null && worldObj != null && worldObj.isRemote)
|
||||
{
|
||||
if(FMLClientHandler.instance().getClient().sndManager.sndSystem != null)
|
||||
{
|
||||
audio = Mekanism.audioHandler.getSound(fullName.replace(" ", "").replace("-","") + ".ogg", worldObj, xCoord, yCoord, zCoord);
|
||||
}
|
||||
}
|
||||
|
||||
if(worldObj != null && worldObj.isRemote && audio != null)
|
||||
{
|
||||
if(!audio.isPlaying && isActive == true)
|
||||
{
|
||||
audio.play();
|
||||
}
|
||||
else if(audio.isPlaying && isActive == false)
|
||||
{
|
||||
audio.stop();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void invalidate()
|
||||
{
|
||||
super.invalidate();
|
||||
|
||||
if(worldObj.isRemote && audio != null)
|
||||
{
|
||||
audio.remove();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the boost this generator can receive in it's current location.
|
||||
* @return environmental boost
|
||||
|
|
|
@ -34,10 +34,6 @@ public class TileEntityHeatGenerator extends TileEntityGenerator implements ITan
|
|||
/** The LiquidSlot fuel instance for this generator. */
|
||||
public LiquidSlot fuelSlot = new LiquidSlot(24000, Mekanism.hooks.BuildCraftFuelID);
|
||||
|
||||
/** The Sound instance for this machine. */
|
||||
@SideOnly(Side.CLIENT)
|
||||
public Sound audio;
|
||||
|
||||
public TileEntityHeatGenerator()
|
||||
{
|
||||
super("Heat Generator", 160000, 480);
|
||||
|
@ -49,16 +45,6 @@ public class TileEntityHeatGenerator extends TileEntityGenerator implements ITan
|
|||
{
|
||||
super.onUpdate();
|
||||
|
||||
if(worldObj.isRemote)
|
||||
{
|
||||
try {
|
||||
synchronized(Mekanism.audioHandler.sounds)
|
||||
{
|
||||
handleSound();
|
||||
}
|
||||
} catch(NoSuchMethodError e) {}
|
||||
}
|
||||
|
||||
if(inventory[1] != null && electricityStored > 0)
|
||||
{
|
||||
if(inventory[1].getItem() instanceof IItemElectric)
|
||||
|
@ -149,33 +135,6 @@ public class TileEntityHeatGenerator extends TileEntityGenerator implements ITan
|
|||
}
|
||||
}
|
||||
|
||||
@SideOnly(Side.CLIENT)
|
||||
public void handleSound()
|
||||
{
|
||||
synchronized(Mekanism.audioHandler.sounds)
|
||||
{
|
||||
if(audio == null && worldObj != null && worldObj.isRemote)
|
||||
{
|
||||
if(FMLClientHandler.instance().getClient().sndManager.sndSystem != null)
|
||||
{
|
||||
audio = Mekanism.audioHandler.getSound("HeatGenerator.ogg", worldObj, xCoord, yCoord, zCoord);
|
||||
}
|
||||
}
|
||||
|
||||
if(worldObj != null && worldObj.isRemote && audio != null)
|
||||
{
|
||||
if(!audio.isPlaying && isActive == true)
|
||||
{
|
||||
audio.play();
|
||||
}
|
||||
else if(audio.isPlaying && isActive == false)
|
||||
{
|
||||
audio.stop();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean canOperate()
|
||||
{
|
||||
|
@ -224,17 +183,6 @@ public class TileEntityHeatGenerator extends TileEntityGenerator implements ITan
|
|||
return TileEntityFurnace.getItemBurnTime(itemstack);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void invalidate()
|
||||
{
|
||||
super.invalidate();
|
||||
|
||||
if(worldObj.isRemote && audio != null)
|
||||
{
|
||||
audio.remove();
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getStartInventorySide(ForgeDirection side)
|
||||
{
|
||||
|
|
|
@ -38,6 +38,12 @@ public class TileEntitySolarGenerator extends TileEntityGenerator
|
|||
inventory = new ItemStack[1];
|
||||
}
|
||||
|
||||
@Override
|
||||
public void handleSound()
|
||||
{
|
||||
//Overridden to prevent sound effects
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getSizeInventorySide(ForgeDirection side)
|
||||
{
|
||||
|
|
139
src/minecraft/mekanism/nei/AdvancedMachineRecipeHandler.java
Normal file
139
src/minecraft/mekanism/nei/AdvancedMachineRecipeHandler.java
Normal file
|
@ -0,0 +1,139 @@
|
|||
package mekanism.nei;
|
||||
|
||||
import java.awt.Rectangle;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Map.Entry;
|
||||
import java.util.Set;
|
||||
|
||||
import net.minecraft.item.ItemStack;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
|
||||
import codechicken.nei.NEIServerUtils;
|
||||
import codechicken.nei.PositionedStack;
|
||||
import codechicken.nei.forge.GuiContainerManager;
|
||||
import codechicken.nei.recipe.TemplateRecipeHandler;
|
||||
|
||||
public abstract class AdvancedMachineRecipeHandler extends TemplateRecipeHandler
|
||||
{
|
||||
int ticksPassed;
|
||||
|
||||
public abstract String getRecipeId();
|
||||
|
||||
public abstract ItemStack getFuelStack();
|
||||
|
||||
public abstract Set<Entry<ItemStack, ItemStack>> getRecipes();
|
||||
|
||||
@Override
|
||||
public void drawBackground(GuiContainerManager guimanager, int i)
|
||||
{
|
||||
GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F);
|
||||
guimanager.bindTextureByName(getGuiTexture());
|
||||
guimanager.drawTexturedModalRect(12, 0, 28, 5, 144, 68);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void drawExtras(GuiContainerManager guimanager, int i)
|
||||
{
|
||||
float f = ticksPassed >= 40 ? (ticksPassed - 40) % 20 / 20.0F : 0.0F;
|
||||
drawProgressBar(guimanager, 63, 34, 176, 0, 24, 7, f, 0);
|
||||
|
||||
f = ticksPassed >= 20 && ticksPassed < 40 ? (ticksPassed - 20) % 20 / 20.0F : 1.0F;
|
||||
if(ticksPassed < 20) f = 0.0F;
|
||||
drawProgressBar(guimanager, 45, 32, 176, 7, 5, 12, f, 3);
|
||||
|
||||
f = ticksPassed <= 20 ? ticksPassed / 20.0F : 1.0F;
|
||||
drawProgressBar(guimanager, 149, 12, 176, 19, 4, 52, f, 3);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUpdate()
|
||||
{
|
||||
super.onUpdate();
|
||||
ticksPassed++;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void loadTransferRects()
|
||||
{
|
||||
transferRects.add(new TemplateRecipeHandler.RecipeTransferRect(new Rectangle(63, 34, 24, 7), getRecipeId(), new Object[0]));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void loadCraftingRecipes(String outputId, Object... results)
|
||||
{
|
||||
if(outputId.equals(getRecipeId()))
|
||||
{
|
||||
for(Map.Entry irecipe : getRecipes())
|
||||
{
|
||||
arecipes.add(new CachedIORecipe(irecipe, getFuelStack()));
|
||||
}
|
||||
}
|
||||
else {
|
||||
super.loadCraftingRecipes(outputId, results);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void loadCraftingRecipes(ItemStack result)
|
||||
{
|
||||
for(Map.Entry irecipe : getRecipes())
|
||||
{
|
||||
if(NEIServerUtils.areStacksSameTypeCrafting((ItemStack)irecipe.getValue(), result))
|
||||
{
|
||||
arecipes.add(new CachedIORecipe(irecipe, getFuelStack()));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void loadUsageRecipes(ItemStack ingredient)
|
||||
{
|
||||
for(Map.Entry irecipe : getRecipes())
|
||||
{
|
||||
if(NEIServerUtils.areStacksSameTypeCrafting((ItemStack)irecipe.getKey(), ingredient))
|
||||
{
|
||||
arecipes.add(new CachedIORecipe(irecipe, getFuelStack()));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public class CachedIORecipe extends TemplateRecipeHandler.CachedRecipe
|
||||
{
|
||||
public PositionedStack inputStack;
|
||||
public PositionedStack outputStack;
|
||||
public PositionedStack fuelStack;
|
||||
|
||||
@Override
|
||||
public PositionedStack getIngredient()
|
||||
{
|
||||
return inputStack;
|
||||
}
|
||||
|
||||
@Override
|
||||
public PositionedStack getResult()
|
||||
{
|
||||
return outputStack;
|
||||
}
|
||||
|
||||
@Override
|
||||
public PositionedStack getOtherStack()
|
||||
{
|
||||
return fuelStack;
|
||||
}
|
||||
|
||||
public CachedIORecipe(ItemStack input, ItemStack output, ItemStack fuel)
|
||||
{
|
||||
super();
|
||||
inputStack = new PositionedStack(input, 40, 12);
|
||||
outputStack = new PositionedStack(output, 100, 30);
|
||||
fuelStack = new PositionedStack(fuel, 40, 48);
|
||||
}
|
||||
|
||||
public CachedIORecipe(Map.Entry recipe, ItemStack fuel)
|
||||
{
|
||||
this((ItemStack)recipe.getKey(), (ItemStack)recipe.getValue(), fuel);
|
||||
}
|
||||
}
|
||||
}
|
55
src/minecraft/mekanism/nei/CombinerRecipeHandler.java
Normal file
55
src/minecraft/mekanism/nei/CombinerRecipeHandler.java
Normal file
|
@ -0,0 +1,55 @@
|
|||
package mekanism.nei;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.item.ItemStack;
|
||||
|
||||
import mekanism.client.GuiAdvancedElectricMachine;
|
||||
import mekanism.common.TileEntityCombiner;
|
||||
|
||||
public class CombinerRecipeHandler extends AdvancedMachineRecipeHandler
|
||||
{
|
||||
@Override
|
||||
public String getRecipeName()
|
||||
{
|
||||
return "Combiner";
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getRecipeId()
|
||||
{
|
||||
return "mekanism.combiner";
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getOverlayIdentifier()
|
||||
{
|
||||
return "combiner";
|
||||
}
|
||||
|
||||
@Override
|
||||
public Set getRecipes()
|
||||
{
|
||||
return TileEntityCombiner.recipes.entrySet();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getGuiTexture()
|
||||
{
|
||||
return "/resources/mekanism/gui/GuiCombiner.png";
|
||||
}
|
||||
|
||||
@Override
|
||||
public ItemStack getFuelStack()
|
||||
{
|
||||
return new ItemStack(Block.cobblestone);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Class getGuiClass()
|
||||
{
|
||||
return GuiAdvancedElectricMachine.class;
|
||||
}
|
||||
}
|
45
src/minecraft/mekanism/nei/CrusherRecipeHandler.java
Normal file
45
src/minecraft/mekanism/nei/CrusherRecipeHandler.java
Normal file
|
@ -0,0 +1,45 @@
|
|||
package mekanism.nei;
|
||||
|
||||
import java.util.Set;
|
||||
|
||||
import mekanism.client.GuiElectricMachine;
|
||||
import mekanism.common.TileEntityCrusher;
|
||||
|
||||
public class CrusherRecipeHandler extends MachineRecipeHandler
|
||||
{
|
||||
@Override
|
||||
public String getRecipeName()
|
||||
{
|
||||
return "Crusher";
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getRecipeId()
|
||||
{
|
||||
return "mekanism.crusher";
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getOverlayIdentifier()
|
||||
{
|
||||
return "crusher";
|
||||
}
|
||||
|
||||
@Override
|
||||
public Set getRecipes()
|
||||
{
|
||||
return TileEntityCrusher.recipes.entrySet();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getGuiTexture()
|
||||
{
|
||||
return "/resources/mekanism/gui/GuiCrusher.png";
|
||||
}
|
||||
|
||||
@Override
|
||||
public Class getGuiClass()
|
||||
{
|
||||
return GuiElectricMachine.class;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,45 @@
|
|||
package mekanism.nei;
|
||||
|
||||
import java.util.Set;
|
||||
|
||||
import mekanism.client.GuiElectricMachine;
|
||||
import mekanism.common.TileEntityEnrichmentChamber;
|
||||
|
||||
public class EnrichmentChamberRecipeHandler extends MachineRecipeHandler
|
||||
{
|
||||
@Override
|
||||
public String getRecipeName()
|
||||
{
|
||||
return "Enrichment Chamber";
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getRecipeId()
|
||||
{
|
||||
return "mekanism.chamber";
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getOverlayIdentifier()
|
||||
{
|
||||
return "chamber";
|
||||
}
|
||||
|
||||
@Override
|
||||
public Set getRecipes()
|
||||
{
|
||||
return TileEntityEnrichmentChamber.recipes.entrySet();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getGuiTexture()
|
||||
{
|
||||
return "/resources/mekanism/gui/GuiChamber.png";
|
||||
}
|
||||
|
||||
@Override
|
||||
public Class getGuiClass()
|
||||
{
|
||||
return GuiElectricMachine.class;
|
||||
}
|
||||
}
|
124
src/minecraft/mekanism/nei/MachineRecipeHandler.java
Normal file
124
src/minecraft/mekanism/nei/MachineRecipeHandler.java
Normal file
|
@ -0,0 +1,124 @@
|
|||
package mekanism.nei;
|
||||
|
||||
import java.awt.Rectangle;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Map.Entry;
|
||||
import java.util.Set;
|
||||
|
||||
import net.minecraft.item.ItemStack;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
|
||||
import codechicken.nei.NEIServerUtils;
|
||||
import codechicken.nei.PositionedStack;
|
||||
import codechicken.nei.forge.GuiContainerManager;
|
||||
import codechicken.nei.recipe.TemplateRecipeHandler;
|
||||
|
||||
public abstract class MachineRecipeHandler extends TemplateRecipeHandler
|
||||
{
|
||||
int ticksPassed;
|
||||
|
||||
public abstract String getRecipeId();
|
||||
|
||||
public abstract Set<Entry<ItemStack, ItemStack>> getRecipes();
|
||||
|
||||
@Override
|
||||
public void drawBackground(GuiContainerManager guimanager, int i)
|
||||
{
|
||||
GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F);
|
||||
guimanager.bindTextureByName(getGuiTexture());
|
||||
guimanager.drawTexturedModalRect(12, 0, 28, 5, 144, 68);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void drawExtras(GuiContainerManager guimanager, int i)
|
||||
{
|
||||
float f = ticksPassed >= 20 ? (ticksPassed - 20) % 20 / 20.0F : 0.0F;
|
||||
drawProgressBar(guimanager, 63, 34, 176, 0, 24, 7, f, 0);
|
||||
f = ticksPassed <= 20 ? ticksPassed / 20.0F : 1.0F;
|
||||
drawProgressBar(guimanager, 149, 12, 176, 7, 4, 52, f, 3);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUpdate()
|
||||
{
|
||||
super.onUpdate();
|
||||
ticksPassed++;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void loadTransferRects()
|
||||
{
|
||||
transferRects.add(new TemplateRecipeHandler.RecipeTransferRect(new Rectangle(63, 34, 24, 7), getRecipeId(), new Object[0]));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void loadCraftingRecipes(String outputId, Object... results)
|
||||
{
|
||||
if(outputId.equals(getRecipeId()))
|
||||
{
|
||||
for(Map.Entry irecipe : getRecipes())
|
||||
{
|
||||
arecipes.add(new CachedIORecipe(irecipe));
|
||||
}
|
||||
}
|
||||
else {
|
||||
super.loadCraftingRecipes(outputId, results);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void loadCraftingRecipes(ItemStack result)
|
||||
{
|
||||
for(Map.Entry irecipe : getRecipes())
|
||||
{
|
||||
if(NEIServerUtils.areStacksSameTypeCrafting((ItemStack)irecipe.getValue(), result))
|
||||
{
|
||||
arecipes.add(new CachedIORecipe(irecipe));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void loadUsageRecipes(ItemStack ingredient)
|
||||
{
|
||||
for(Map.Entry irecipe : getRecipes())
|
||||
{
|
||||
if(NEIServerUtils.areStacksSameTypeCrafting((ItemStack)irecipe.getKey(), ingredient))
|
||||
{
|
||||
arecipes.add(new CachedIORecipe(irecipe));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public class CachedIORecipe extends TemplateRecipeHandler.CachedRecipe
|
||||
{
|
||||
public PositionedStack input;
|
||||
public PositionedStack output;
|
||||
|
||||
@Override
|
||||
public PositionedStack getIngredient()
|
||||
{
|
||||
return input;
|
||||
}
|
||||
|
||||
@Override
|
||||
public PositionedStack getResult()
|
||||
{
|
||||
return output;
|
||||
}
|
||||
|
||||
public CachedIORecipe(ItemStack itemstack, ItemStack itemstack1)
|
||||
{
|
||||
super();
|
||||
input = new PositionedStack(itemstack, 40, 12);
|
||||
output = new PositionedStack(itemstack1, 100, 30);
|
||||
}
|
||||
|
||||
public CachedIORecipe(Map.Entry recipe)
|
||||
{
|
||||
this((ItemStack)recipe.getKey(), (ItemStack)recipe.getValue());
|
||||
}
|
||||
}
|
||||
}
|
181
src/minecraft/mekanism/nei/MetallurgicInfuserRecipeHandler.java
Normal file
181
src/minecraft/mekanism/nei/MetallurgicInfuserRecipeHandler.java
Normal file
|
@ -0,0 +1,181 @@
|
|||
package mekanism.nei;
|
||||
|
||||
import java.awt.Rectangle;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Map.Entry;
|
||||
import java.util.Set;
|
||||
|
||||
import mekanism.api.InfusionInput;
|
||||
import mekanism.api.InfusionOutput;
|
||||
import mekanism.api.InfusionType;
|
||||
import mekanism.client.GuiMetallurgicInfuser;
|
||||
import mekanism.common.Mekanism;
|
||||
import mekanism.common.TileEntityMetallurgicInfuser;
|
||||
import net.minecraft.item.ItemStack;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
|
||||
import codechicken.nei.NEIServerUtils;
|
||||
import codechicken.nei.PositionedStack;
|
||||
import codechicken.nei.forge.GuiContainerManager;
|
||||
import codechicken.nei.recipe.TemplateRecipeHandler;
|
||||
|
||||
public class MetallurgicInfuserRecipeHandler extends TemplateRecipeHandler
|
||||
{
|
||||
int ticksPassed;
|
||||
|
||||
@Override
|
||||
public String getRecipeName()
|
||||
{
|
||||
return "Metallurgic Infuser";
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getOverlayIdentifier()
|
||||
{
|
||||
return "infuser";
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getGuiTexture()
|
||||
{
|
||||
return "/resources/mekanism/gui/GuiMetallurgicInfuser.png";
|
||||
}
|
||||
|
||||
@Override
|
||||
public Class getGuiClass()
|
||||
{
|
||||
return GuiMetallurgicInfuser.class;
|
||||
}
|
||||
|
||||
public String getRecipeId()
|
||||
{
|
||||
return "mekanism.infuser";
|
||||
}
|
||||
|
||||
public ItemStack getInfuseStack(InfusionType type)
|
||||
{
|
||||
return type == InfusionType.COAL ? new ItemStack(Mekanism.CompressedCarbon) : new ItemStack(Mekanism.Dust, 1, 7);
|
||||
}
|
||||
|
||||
public Set<Entry<InfusionInput, InfusionOutput>> getRecipes()
|
||||
{
|
||||
return TileEntityMetallurgicInfuser.recipes.entrySet();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void drawBackground(GuiContainerManager guimanager, int i)
|
||||
{
|
||||
GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F);
|
||||
guimanager.bindTextureByName(getGuiTexture());
|
||||
guimanager.drawTexturedModalRect(0, 0, 5, 5, 166, 78);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void drawExtras(GuiContainerManager guimanager, int i)
|
||||
{
|
||||
float f = ticksPassed >= 40 ? (ticksPassed - 40) % 20 / 20.0F : 0.0F;
|
||||
drawProgressBar(guimanager, 67, 42, 176, 104, 32, 8, f, 0);
|
||||
|
||||
f = ticksPassed >= 20 && ticksPassed < 40 ? (ticksPassed - 20) % 20 / 20.0F : 1.0F;
|
||||
if(ticksPassed < 20) f = 0.0F;
|
||||
int infuseX = 176 + (getOtherStacks(i).get(0).item.isItemEqual(new ItemStack(Mekanism.CompressedCarbon)) ? 4 : 0);
|
||||
int infuseY = getOtherStacks(i).get(0).item.isItemEqual(new ItemStack(Mekanism.CompressedCarbon)) ? 0 : 52;
|
||||
|
||||
drawProgressBar(guimanager, 2, 22, infuseX, infuseY, 4, 52, f, 3);
|
||||
|
||||
f = ticksPassed <= 20 ? ticksPassed / 20.0F : 1.0F;
|
||||
drawProgressBar(guimanager, 160, 12, 176, 0, 4, 52, f, 3);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUpdate()
|
||||
{
|
||||
super.onUpdate();
|
||||
ticksPassed++;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void loadTransferRects()
|
||||
{
|
||||
transferRects.add(new TemplateRecipeHandler.RecipeTransferRect(new Rectangle(67, 42, 32, 8), getRecipeId(), new Object[0]));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void loadCraftingRecipes(String outputId, Object... results)
|
||||
{
|
||||
if(outputId.equals(getRecipeId()))
|
||||
{
|
||||
for(Map.Entry irecipe : getRecipes())
|
||||
{
|
||||
arecipes.add(new CachedIORecipe(irecipe, getInfuseStack(((InfusionInput)irecipe.getKey()).infusionType)));
|
||||
}
|
||||
}
|
||||
else {
|
||||
super.loadCraftingRecipes(outputId, results);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void loadCraftingRecipes(ItemStack result)
|
||||
{
|
||||
for(Map.Entry irecipe : getRecipes())
|
||||
{
|
||||
if(NEIServerUtils.areStacksSameTypeCrafting(((InfusionOutput)irecipe.getValue()).resource, result))
|
||||
{
|
||||
arecipes.add(new CachedIORecipe(irecipe, getInfuseStack(((InfusionInput)irecipe.getKey()).infusionType)));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void loadUsageRecipes(ItemStack ingredient)
|
||||
{
|
||||
for(Map.Entry irecipe : getRecipes())
|
||||
{
|
||||
if(NEIServerUtils.areStacksSameTypeCrafting(((InfusionInput)irecipe.getKey()).inputSlot, ingredient))
|
||||
{
|
||||
arecipes.add(new CachedIORecipe(irecipe, getInfuseStack(((InfusionInput)irecipe.getKey()).infusionType)));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public class CachedIORecipe extends TemplateRecipeHandler.CachedRecipe
|
||||
{
|
||||
public PositionedStack inputStack;
|
||||
public PositionedStack outputStack;
|
||||
public PositionedStack infuseStack;
|
||||
|
||||
@Override
|
||||
public PositionedStack getIngredient()
|
||||
{
|
||||
return inputStack;
|
||||
}
|
||||
|
||||
@Override
|
||||
public PositionedStack getResult()
|
||||
{
|
||||
return outputStack;
|
||||
}
|
||||
|
||||
@Override
|
||||
public PositionedStack getOtherStack()
|
||||
{
|
||||
return infuseStack;
|
||||
}
|
||||
|
||||
public CachedIORecipe(ItemStack input, ItemStack output, ItemStack infuse)
|
||||
{
|
||||
super();
|
||||
inputStack = new PositionedStack(input, 46, 38);
|
||||
outputStack = new PositionedStack(output, 104, 38);
|
||||
infuseStack = new PositionedStack(infuse, 12, 30);
|
||||
}
|
||||
|
||||
public CachedIORecipe(Map.Entry recipe, ItemStack infuse)
|
||||
{
|
||||
this(((InfusionInput)recipe.getKey()).inputSlot, ((InfusionOutput)recipe.getValue()).resource, infuse);
|
||||
}
|
||||
}
|
||||
}
|
34
src/minecraft/mekanism/nei/NEIMekanismConfig.java
Normal file
34
src/minecraft/mekanism/nei/NEIMekanismConfig.java
Normal file
|
@ -0,0 +1,34 @@
|
|||
package mekanism.nei;
|
||||
|
||||
import codechicken.nei.api.API;
|
||||
import codechicken.nei.api.IConfigureNEI;
|
||||
|
||||
public class NEIMekanismConfig implements IConfigureNEI
|
||||
{
|
||||
@Override
|
||||
public void loadConfig()
|
||||
{
|
||||
API.registerRecipeHandler(new EnrichmentChamberRecipeHandler());
|
||||
API.registerUsageHandler(new EnrichmentChamberRecipeHandler());
|
||||
API.registerRecipeHandler(new PlatinumCompressorRecipeHandler());
|
||||
API.registerUsageHandler(new PlatinumCompressorRecipeHandler());
|
||||
API.registerRecipeHandler(new CrusherRecipeHandler());
|
||||
API.registerUsageHandler(new CrusherRecipeHandler());
|
||||
API.registerRecipeHandler(new CombinerRecipeHandler());
|
||||
API.registerUsageHandler(new CombinerRecipeHandler());
|
||||
API.registerRecipeHandler(new MetallurgicInfuserRecipeHandler());
|
||||
API.registerUsageHandler(new MetallurgicInfuserRecipeHandler());
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getName()
|
||||
{
|
||||
return "Mekanism NEI Plugin";
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getVersion()
|
||||
{
|
||||
return "1.0.0";
|
||||
}
|
||||
}
|
|
@ -0,0 +1,54 @@
|
|||
package mekanism.nei;
|
||||
|
||||
import java.util.Set;
|
||||
|
||||
import net.minecraft.item.ItemStack;
|
||||
|
||||
import mekanism.client.GuiAdvancedElectricMachine;
|
||||
import mekanism.common.Mekanism;
|
||||
import mekanism.common.TileEntityPlatinumCompressor;
|
||||
|
||||
public class PlatinumCompressorRecipeHandler extends AdvancedMachineRecipeHandler
|
||||
{
|
||||
@Override
|
||||
public String getRecipeName()
|
||||
{
|
||||
return "Platinum Compressor";
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getRecipeId()
|
||||
{
|
||||
return "mekanism.compressor";
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getOverlayIdentifier()
|
||||
{
|
||||
return "compressor";
|
||||
}
|
||||
|
||||
@Override
|
||||
public Set getRecipes()
|
||||
{
|
||||
return TileEntityPlatinumCompressor.recipes.entrySet();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getGuiTexture()
|
||||
{
|
||||
return "/resources/mekanism/gui/GuiCompressor.png";
|
||||
}
|
||||
|
||||
@Override
|
||||
public ItemStack getFuelStack()
|
||||
{
|
||||
return new ItemStack(Mekanism.Ingot, 1, 1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Class getGuiClass()
|
||||
{
|
||||
return GuiAdvancedElectricMachine.class;
|
||||
}
|
||||
}
|
|
@ -26,7 +26,7 @@ import cpw.mods.fml.common.network.NetworkMod;
|
|||
import cpw.mods.fml.common.registry.EntityRegistry;
|
||||
import cpw.mods.fml.common.registry.LanguageRegistry;
|
||||
|
||||
@Mod(modid = "MekanismTools", name = "MekanismTools", version = "5.0.7", dependencies = "required-after:Mekanism")
|
||||
@Mod(modid = "MekanismTools", name = "MekanismTools", version = "5.0.9", dependencies = "required-after:Mekanism")
|
||||
@NetworkMod(clientSideRequired = true, serverSideRequired = false)
|
||||
public class MekanismTools
|
||||
{
|
||||
|
@ -529,84 +529,86 @@ public class MekanismTools
|
|||
|
||||
public void addItems()
|
||||
{
|
||||
Mekanism.configuration.load();
|
||||
//Bronze
|
||||
BronzeHelmet = (new ItemMekanismArmor(11400, armorBRONZE, Mekanism.proxy.getArmorIndex("bronze"), 0)).setItemName("BronzeHelmet");
|
||||
BronzeBody = (new ItemMekanismArmor(11401, armorBRONZE, Mekanism.proxy.getArmorIndex("bronze"), 1)).setItemName("BronzeBody");
|
||||
BronzeLegs = (new ItemMekanismArmor(11402, armorBRONZE, Mekanism.proxy.getArmorIndex("bronze"), 2)).setItemName("BronzeLegs");
|
||||
BronzeBoots = (new ItemMekanismArmor(11403, armorBRONZE, Mekanism.proxy.getArmorIndex("bronze"), 3)).setItemName("BronzeBoots");
|
||||
BronzePaxel = new ItemMekanismPaxel(11404, toolBRONZE2).setItemName("BronzePaxel");
|
||||
BronzePickaxe = new ItemMekanismPickaxe(11405, toolBRONZE).setItemName("BronzePickaxe");
|
||||
BronzeAxe = new ItemMekanismAxe(11406, toolBRONZE).setItemName("BronzeAxe");
|
||||
BronzeSpade = new ItemMekanismSpade(11407, toolBRONZE).setItemName("BronzeSpade");
|
||||
BronzeHoe = new ItemMekanismHoe(11408, toolBRONZE).setItemName("BronzeHoe");
|
||||
BronzeSword = new ItemMekanismSword(11409, toolBRONZE).setItemName("BronzeSword");
|
||||
BronzeHelmet = (new ItemMekanismArmor(Mekanism.configuration.getItem("BronzeHelmet", 11400).getInt(), armorBRONZE, Mekanism.proxy.getArmorIndex("bronze"), 0)).setItemName("BronzeHelmet");
|
||||
BronzeBody = (new ItemMekanismArmor(Mekanism.configuration.getItem("BronzeBody", 11401).getInt(), armorBRONZE, Mekanism.proxy.getArmorIndex("bronze"), 1)).setItemName("BronzeBody");
|
||||
BronzeLegs = (new ItemMekanismArmor(Mekanism.configuration.getItem("BronzeLegs", 11402).getInt(), armorBRONZE, Mekanism.proxy.getArmorIndex("bronze"), 2)).setItemName("BronzeLegs");
|
||||
BronzeBoots = (new ItemMekanismArmor(Mekanism.configuration.getItem("BronzeBoots", 11403).getInt(), armorBRONZE, Mekanism.proxy.getArmorIndex("bronze"), 3)).setItemName("BronzeBoots");
|
||||
BronzePaxel = new ItemMekanismPaxel(Mekanism.configuration.getItem("BronzePaxel", 11404).getInt(), toolBRONZE2).setItemName("BronzePaxel");
|
||||
BronzePickaxe = new ItemMekanismPickaxe(Mekanism.configuration.getItem("BronzePickaxe", 11405).getInt(), toolBRONZE).setItemName("BronzePickaxe");
|
||||
BronzeAxe = new ItemMekanismAxe(Mekanism.configuration.getItem("BronzeAxe", 11406).getInt(), toolBRONZE).setItemName("BronzeAxe");
|
||||
BronzeSpade = new ItemMekanismSpade(Mekanism.configuration.getItem("BronzeSpade", 11407).getInt(), toolBRONZE).setItemName("BronzeSpade");
|
||||
BronzeHoe = new ItemMekanismHoe(Mekanism.configuration.getItem("BronzeHoe", 11408).getInt(), toolBRONZE).setItemName("BronzeHoe");
|
||||
BronzeSword = new ItemMekanismSword(Mekanism.configuration.getItem("BronzeSword", 11409).getInt(), toolBRONZE).setItemName("BronzeSword");
|
||||
|
||||
//Platinum
|
||||
PlatinumHelmet = (new ItemMekanismArmor(11410, EnumArmorMaterial.DIAMOND, Mekanism.proxy.getArmorIndex("platinum"), 0)).setItemName("PlatinumHelmet");
|
||||
PlatinumBody = (new ItemMekanismArmor(11411, EnumArmorMaterial.DIAMOND, Mekanism.proxy.getArmorIndex("platinum"), 1)).setItemName("PlatinumBody");
|
||||
PlatinumLegs = (new ItemMekanismArmor(11412, EnumArmorMaterial.DIAMOND, Mekanism.proxy.getArmorIndex("platinum"), 2)).setItemName("PlatinumLegs");
|
||||
PlatinumBoots = (new ItemMekanismArmor(11413, EnumArmorMaterial.DIAMOND, Mekanism.proxy.getArmorIndex("platinum"), 3)).setItemName("PlatinumBoots");
|
||||
PlatinumPaxel = new ItemMekanismPaxel(11414, toolPLATINUM2).setItemName("PlatinumPaxel");
|
||||
PlatinumPickaxe = new ItemMekanismPickaxe(11415, toolPLATINUM).setItemName("PlatinumPickaxe");
|
||||
PlatinumAxe = new ItemMekanismAxe(11416, toolPLATINUM).setItemName("PlatinumAxe");
|
||||
PlatinumSpade = new ItemMekanismSpade(11417, toolPLATINUM).setItemName("PlatinumSpade");
|
||||
PlatinumHoe = new ItemMekanismHoe(11418, toolPLATINUM).setItemName("PlatinumHoe");
|
||||
PlatinumSword = new ItemMekanismSword(11419, toolPLATINUM).setItemName("PlatinumSword");
|
||||
PlatinumHelmet = (new ItemMekanismArmor(Mekanism.configuration.getItem("PlatinumHelmet", 11410).getInt(), EnumArmorMaterial.DIAMOND, Mekanism.proxy.getArmorIndex("platinum"), 0)).setItemName("PlatinumHelmet");
|
||||
PlatinumBody = (new ItemMekanismArmor(Mekanism.configuration.getItem("PlatinumBody", 11411).getInt(), EnumArmorMaterial.DIAMOND, Mekanism.proxy.getArmorIndex("platinum"), 1)).setItemName("PlatinumBody");
|
||||
PlatinumLegs = (new ItemMekanismArmor(Mekanism.configuration.getItem("PlatinumLegs", 11412).getInt(), EnumArmorMaterial.DIAMOND, Mekanism.proxy.getArmorIndex("platinum"), 2)).setItemName("PlatinumLegs");
|
||||
PlatinumBoots = (new ItemMekanismArmor(Mekanism.configuration.getItem("PlatinumBoots", 11413).getInt(), EnumArmorMaterial.DIAMOND, Mekanism.proxy.getArmorIndex("platinum"), 3)).setItemName("PlatinumBoots");
|
||||
PlatinumPaxel = new ItemMekanismPaxel(Mekanism.configuration.getItem("PlatinumPaxel", 11414).getInt(), toolPLATINUM2).setItemName("PlatinumPaxel");
|
||||
PlatinumPickaxe = new ItemMekanismPickaxe(Mekanism.configuration.getItem("PlatinumPickaxe", 11415).getInt(), toolPLATINUM).setItemName("PlatinumPickaxe");
|
||||
PlatinumAxe = new ItemMekanismAxe(Mekanism.configuration.getItem("PlatinumAxe", 11416).getInt(), toolPLATINUM).setItemName("PlatinumAxe");
|
||||
PlatinumSpade = new ItemMekanismSpade(Mekanism.configuration.getItem("PlatinumSpade", 11417).getInt(), toolPLATINUM).setItemName("PlatinumSpade");
|
||||
PlatinumHoe = new ItemMekanismHoe(Mekanism.configuration.getItem("PlatinumHoe", 11418).getInt(), toolPLATINUM).setItemName("PlatinumHoe");
|
||||
PlatinumSword = new ItemMekanismSword(Mekanism.configuration.getItem("PlatinumSword", 11419).getInt(), toolPLATINUM).setItemName("PlatinumSword");
|
||||
|
||||
//Obsidian
|
||||
ObsidianHelmet = (new ItemMekanismArmor(11420, armorOBSIDIAN, Mekanism.proxy.getArmorIndex("obsidian"), 0)).setItemName("ObsidianHelmet");
|
||||
ObsidianBody = (new ItemMekanismArmor(11421, armorOBSIDIAN, Mekanism.proxy.getArmorIndex("obsidian"), 1)).setItemName("ObsidianBody");
|
||||
ObsidianLegs = (new ItemMekanismArmor(11422, armorOBSIDIAN, Mekanism.proxy.getArmorIndex("obsidian"), 2)).setItemName("ObsidianLegs");
|
||||
ObsidianBoots = (new ItemMekanismArmor(11423, armorOBSIDIAN, Mekanism.proxy.getArmorIndex("obsidian"), 3)).setItemName("ObsidianBoots");
|
||||
ObsidianPaxel = new ItemMekanismPaxel(11424, toolOBSIDIAN2).setItemName("ObsidianPaxel");
|
||||
ObsidianPickaxe = new ItemMekanismPickaxe(11425, toolOBSIDIAN).setItemName("ObsidianPickaxe");
|
||||
ObsidianAxe = new ItemMekanismAxe(11426, toolOBSIDIAN).setItemName("ObsidianAxe");
|
||||
ObsidianSpade = new ItemMekanismSpade(11427, toolOBSIDIAN).setItemName("ObsidianSpade");
|
||||
ObsidianHoe = new ItemMekanismHoe(11428, toolOBSIDIAN).setItemName("ObsidianHoe");
|
||||
ObsidianSword = new ItemMekanismSword(11429, toolOBSIDIAN).setItemName("ObsidianSword");
|
||||
ObsidianHelmet = (new ItemMekanismArmor(Mekanism.configuration.getItem("ObsidianHelmet", 11420).getInt(), armorOBSIDIAN, Mekanism.proxy.getArmorIndex("obsidian"), 0)).setItemName("ObsidianHelmet");
|
||||
ObsidianBody = (new ItemMekanismArmor(Mekanism.configuration.getItem("ObsidianBody", 11421).getInt(), armorOBSIDIAN, Mekanism.proxy.getArmorIndex("obsidian"), 1)).setItemName("ObsidianBody");
|
||||
ObsidianLegs = (new ItemMekanismArmor(Mekanism.configuration.getItem("ObsidianLegs", 11422).getInt(), armorOBSIDIAN, Mekanism.proxy.getArmorIndex("obsidian"), 2)).setItemName("ObsidianLegs");
|
||||
ObsidianBoots = (new ItemMekanismArmor(Mekanism.configuration.getItem("ObsidianBoots", 11423).getInt(), armorOBSIDIAN, Mekanism.proxy.getArmorIndex("obsidian"), 3)).setItemName("ObsidianBoots");
|
||||
ObsidianPaxel = new ItemMekanismPaxel(Mekanism.configuration.getItem("ObsidianPaxel", 11424).getInt(), toolOBSIDIAN2).setItemName("ObsidianPaxel");
|
||||
ObsidianPickaxe = new ItemMekanismPickaxe(Mekanism.configuration.getItem("ObsidianPickaxe", 11425).getInt(), toolOBSIDIAN).setItemName("ObsidianPickaxe");
|
||||
ObsidianAxe = new ItemMekanismAxe(Mekanism.configuration.getItem("ObsidianAxe", 11426).getInt(), toolOBSIDIAN).setItemName("ObsidianAxe");
|
||||
ObsidianSpade = new ItemMekanismSpade(Mekanism.configuration.getItem("ObsidianSpade", 11427).getInt(), toolOBSIDIAN).setItemName("ObsidianSpade");
|
||||
ObsidianHoe = new ItemMekanismHoe(Mekanism.configuration.getItem("ObsidianHoe", 11428).getInt(), toolOBSIDIAN).setItemName("ObsidianHoe");
|
||||
ObsidianSword = new ItemMekanismSword(Mekanism.configuration.getItem("ObsidianSword", 11429).getInt(), toolOBSIDIAN).setItemName("ObsidianSword");
|
||||
|
||||
//Lazuli
|
||||
LazuliPaxel = new ItemMekanismPaxel(11430, toolLAZULI2).setItemName("LazuliPaxel");
|
||||
LazuliPickaxe = new ItemMekanismPickaxe(11431, toolLAZULI).setItemName("LazuliPickaxe");
|
||||
LazuliAxe = new ItemMekanismAxe(11432, toolLAZULI).setItemName("LazuliAxe");
|
||||
LazuliSpade = new ItemMekanismSpade(11433, toolLAZULI).setItemName("LazuliSpade");
|
||||
LazuliHoe = new ItemMekanismHoe(11434, toolLAZULI).setItemName("LazuliHoe");
|
||||
LazuliSword = new ItemMekanismSword(11435, toolLAZULI).setItemName("LazuliSword");
|
||||
LazuliHelmet = (new ItemMekanismArmor(11436, armorLAZULI, Mekanism.proxy.getArmorIndex("lazuli"), 0)).setItemName("LazuliHelmet");
|
||||
LazuliBody = (new ItemMekanismArmor(11437, armorLAZULI, Mekanism.proxy.getArmorIndex("lazuli"), 1)).setItemName("LazuliBody");
|
||||
LazuliLegs = (new ItemMekanismArmor(11438, armorLAZULI, Mekanism.proxy.getArmorIndex("lazuli"), 2)).setItemName("LazuliLegs");
|
||||
LazuliBoots = (new ItemMekanismArmor(11439, armorLAZULI, Mekanism.proxy.getArmorIndex("lazuli"), 3)).setItemName("LazuliBoots");
|
||||
LazuliPaxel = new ItemMekanismPaxel(Mekanism.configuration.getItem("LazuliPaxel", 11430).getInt(), toolLAZULI2).setItemName("LazuliPaxel");
|
||||
LazuliPickaxe = new ItemMekanismPickaxe(Mekanism.configuration.getItem("LazuliPickaxe", 11431).getInt(), toolLAZULI).setItemName("LazuliPickaxe");
|
||||
LazuliAxe = new ItemMekanismAxe(Mekanism.configuration.getItem("LazuliAxe", 11432).getInt(), toolLAZULI).setItemName("LazuliAxe");
|
||||
LazuliSpade = new ItemMekanismSpade(Mekanism.configuration.getItem("LazuliSpade", 11433).getInt(), toolLAZULI).setItemName("LazuliSpade");
|
||||
LazuliHoe = new ItemMekanismHoe(Mekanism.configuration.getItem("LazuliHoe", 11434).getInt(), toolLAZULI).setItemName("LazuliHoe");
|
||||
LazuliSword = new ItemMekanismSword(Mekanism.configuration.getItem("LazuliSword", 11435).getInt(), toolLAZULI).setItemName("LazuliSword");
|
||||
LazuliHelmet = (new ItemMekanismArmor(Mekanism.configuration.getItem("LazuliHelmet", 11436).getInt(), armorLAZULI, Mekanism.proxy.getArmorIndex("lazuli"), 0)).setItemName("LazuliHelmet");
|
||||
LazuliBody = (new ItemMekanismArmor(Mekanism.configuration.getItem("LazuliBody", 11437).getInt(), armorLAZULI, Mekanism.proxy.getArmorIndex("lazuli"), 1)).setItemName("LazuliBody");
|
||||
LazuliLegs = (new ItemMekanismArmor(Mekanism.configuration.getItem("LazuliLegs", 11438).getInt(), armorLAZULI, Mekanism.proxy.getArmorIndex("lazuli"), 2)).setItemName("LazuliLegs");
|
||||
LazuliBoots = (new ItemMekanismArmor(Mekanism.configuration.getItem("LazuliBoots", 11439).getInt(), armorLAZULI, Mekanism.proxy.getArmorIndex("lazuli"), 3)).setItemName("LazuliBoots");
|
||||
|
||||
//Glowstone
|
||||
GlowstonePaxel = new ItemMekanismPaxel(11440, toolGLOWSTONE2).setItemName("GlowstonePaxel");
|
||||
GlowstonePickaxe = new ItemMekanismPickaxe(11441, toolGLOWSTONE).setItemName("GlowstonePickaxe");
|
||||
GlowstoneAxe = new ItemMekanismAxe(11442, toolGLOWSTONE).setItemName("GlowstoneAxe");
|
||||
GlowstoneSpade = new ItemMekanismSpade(11443, toolGLOWSTONE).setItemName("GlowstoneSpade");
|
||||
GlowstoneHoe = new ItemMekanismHoe(11444, toolGLOWSTONE).setItemName("GlowstoneHoe");
|
||||
GlowstoneSword = new ItemMekanismSword(11445, toolGLOWSTONE).setItemName("GlowstoneSword");
|
||||
GlowstoneHelmet = new ItemMekanismArmor(11446, armorGLOWSTONE, Mekanism.proxy.getArmorIndex("glowstone"), 0).setItemName("GlowstoneHelmet");
|
||||
GlowstoneBody = new ItemMekanismArmor(11447, armorGLOWSTONE, Mekanism.proxy.getArmorIndex("glowstone"), 1).setItemName("GlowstoneBody");
|
||||
GlowstoneLegs = new ItemMekanismArmor(11448, armorGLOWSTONE, Mekanism.proxy.getArmorIndex("glowstone"), 2).setItemName("GlowstoneLegs");
|
||||
GlowstoneBoots = new ItemMekanismArmor(11449, armorGLOWSTONE, Mekanism.proxy.getArmorIndex("glowstone"), 3).setItemName("GlowstoneBoots");
|
||||
GlowstonePaxel = new ItemMekanismPaxel(Mekanism.configuration.getItem("GlowstonePaxel", 11440).getInt(), toolGLOWSTONE2).setItemName("GlowstonePaxel");
|
||||
GlowstonePickaxe = new ItemMekanismPickaxe(Mekanism.configuration.getItem("GlowstonePickaxe", 11441).getInt(), toolGLOWSTONE).setItemName("GlowstonePickaxe");
|
||||
GlowstoneAxe = new ItemMekanismAxe(Mekanism.configuration.getItem("GlowstoneAxe", 11442).getInt(), toolGLOWSTONE).setItemName("GlowstoneAxe");
|
||||
GlowstoneSpade = new ItemMekanismSpade(Mekanism.configuration.getItem("GlowstoneSpade", 11443).getInt(), toolGLOWSTONE).setItemName("GlowstoneSpade");
|
||||
GlowstoneHoe = new ItemMekanismHoe(Mekanism.configuration.getItem("GlowstoneHoe", 11444).getInt(), toolGLOWSTONE).setItemName("GlowstoneHoe");
|
||||
GlowstoneSword = new ItemMekanismSword(Mekanism.configuration.getItem("GlowstoneSword", 11445).getInt(), toolGLOWSTONE).setItemName("GlowstoneSword");
|
||||
GlowstoneHelmet = new ItemMekanismArmor(Mekanism.configuration.getItem("GlowstoneHelmet", 11446).getInt(), armorGLOWSTONE, Mekanism.proxy.getArmorIndex("glowstone"), 0).setItemName("GlowstoneHelmet");
|
||||
GlowstoneBody = new ItemMekanismArmor(Mekanism.configuration.getItem("GlowstoneBody", 11447).getInt(), armorGLOWSTONE, Mekanism.proxy.getArmorIndex("glowstone"), 1).setItemName("GlowstoneBody");
|
||||
GlowstoneLegs = new ItemMekanismArmor(Mekanism.configuration.getItem("GlowstoneLegs", 11448).getInt(), armorGLOWSTONE, Mekanism.proxy.getArmorIndex("glowstone"), 2).setItemName("GlowstoneLegs");
|
||||
GlowstoneBoots = new ItemMekanismArmor(Mekanism.configuration.getItem("GlowstoneBoots", 11449).getInt(), armorGLOWSTONE, Mekanism.proxy.getArmorIndex("glowstone"), 3).setItemName("GlowstoneBoots");
|
||||
|
||||
//Base Paxels
|
||||
WoodPaxel = new ItemMekanismPaxel(11450, EnumToolMaterial.WOOD).setItemName("WoodPaxel");
|
||||
StonePaxel = new ItemMekanismPaxel(11451, EnumToolMaterial.STONE).setItemName("StonePaxel");
|
||||
IronPaxel = new ItemMekanismPaxel(11452, EnumToolMaterial.IRON).setItemName("IronPaxel");
|
||||
DiamondPaxel = new ItemMekanismPaxel(11453, EnumToolMaterial.EMERALD).setItemName("DiamondPaxel");
|
||||
GoldPaxel = new ItemMekanismPaxel(11454, EnumToolMaterial.GOLD).setItemName("GoldPaxel");
|
||||
WoodPaxel = new ItemMekanismPaxel(Mekanism.configuration.getItem("WoodPaxel", 11450).getInt(), EnumToolMaterial.WOOD).setItemName("WoodPaxel");
|
||||
StonePaxel = new ItemMekanismPaxel(Mekanism.configuration.getItem("StonePaxel", 11451).getInt(), EnumToolMaterial.STONE).setItemName("StonePaxel");
|
||||
IronPaxel = new ItemMekanismPaxel(Mekanism.configuration.getItem("IronPaxel", 11452).getInt(), EnumToolMaterial.IRON).setItemName("IronPaxel");
|
||||
DiamondPaxel = new ItemMekanismPaxel(Mekanism.configuration.getItem("DiamondPaxel", 11453).getInt(), EnumToolMaterial.EMERALD).setItemName("DiamondPaxel");
|
||||
GoldPaxel = new ItemMekanismPaxel(Mekanism.configuration.getItem("GoldPaxel", 11454).getInt(), EnumToolMaterial.GOLD).setItemName("GoldPaxel");
|
||||
|
||||
//Steel
|
||||
SteelPaxel = new ItemMekanismPaxel(11455, toolSTEEL2).setItemName("SteelPaxel");
|
||||
SteelPickaxe = new ItemMekanismPickaxe(11456, toolSTEEL).setItemName("SteelPickaxe");
|
||||
SteelAxe = new ItemMekanismAxe(11457, toolSTEEL).setItemName("SteelAxe");
|
||||
SteelSpade = new ItemMekanismSpade(11458, toolSTEEL).setItemName("SteelSpade");
|
||||
SteelHoe = new ItemMekanismHoe(11459, toolSTEEL).setItemName("SteelHoe");
|
||||
SteelSword = new ItemMekanismSword(11460, toolSTEEL).setItemName("SteelSword");
|
||||
SteelHelmet = new ItemMekanismArmor(11461, armorSTEEL, Mekanism.proxy.getArmorIndex("steel"), 0).setItemName("SteelHelmet");
|
||||
SteelBody = new ItemMekanismArmor(11462, armorSTEEL, Mekanism.proxy.getArmorIndex("steel"), 1).setItemName("SteelBody");
|
||||
SteelLegs = new ItemMekanismArmor(11463, armorSTEEL, Mekanism.proxy.getArmorIndex("steel"), 2).setItemName("SteelLegs");
|
||||
SteelBoots = new ItemMekanismArmor(11464, armorSTEEL, Mekanism.proxy.getArmorIndex("steel"), 3).setItemName("SteelBoots");
|
||||
SteelPaxel = new ItemMekanismPaxel(Mekanism.configuration.getItem("SteelPaxel", 11455).getInt(), toolSTEEL2).setItemName("SteelPaxel");
|
||||
SteelPickaxe = new ItemMekanismPickaxe(Mekanism.configuration.getItem("SteelPickaxe", 11456).getInt(), toolSTEEL).setItemName("SteelPickaxe");
|
||||
SteelAxe = new ItemMekanismAxe(Mekanism.configuration.getItem("SteelAxe", 11457).getInt(), toolSTEEL).setItemName("SteelAxe");
|
||||
SteelSpade = new ItemMekanismSpade(Mekanism.configuration.getItem("SteelSpade", 11458).getInt(), toolSTEEL).setItemName("SteelSpade");
|
||||
SteelHoe = new ItemMekanismHoe(Mekanism.configuration.getItem("SteelHoe", 11459).getInt(), toolSTEEL).setItemName("SteelHoe");
|
||||
SteelSword = new ItemMekanismSword(Mekanism.configuration.getItem("SteelSword", 11460).getInt(), toolSTEEL).setItemName("SteelSword");
|
||||
SteelHelmet = new ItemMekanismArmor(Mekanism.configuration.getItem("SteelHelmet", 11461).getInt(), armorSTEEL, Mekanism.proxy.getArmorIndex("steel"), 0).setItemName("SteelHelmet");
|
||||
SteelBody = new ItemMekanismArmor(Mekanism.configuration.getItem("SteelBody", 11462).getInt(), armorSTEEL, Mekanism.proxy.getArmorIndex("steel"), 1).setItemName("SteelBody");
|
||||
SteelLegs = new ItemMekanismArmor(Mekanism.configuration.getItem("SteelLegs", 11463).getInt(), armorSTEEL, Mekanism.proxy.getArmorIndex("steel"), 2).setItemName("SteelLegs");
|
||||
SteelBoots = new ItemMekanismArmor(Mekanism.configuration.getItem("SteelBoots", 11464).getInt(), armorSTEEL, Mekanism.proxy.getArmorIndex("steel"), 3).setItemName("SteelBoots");
|
||||
Mekanism.configuration.save();
|
||||
}
|
||||
|
||||
@ForgeSubscribe
|
||||
|
|
Loading…
Reference in a new issue