v5.0.1 Beta #2

*Updated to MC v1.4.6.
*Updated all APIs.
*Repackaged for new Forge.
*Added Metallurgic Infuser for making Steel and Bronze.
*Added Refined Steel Dust.
*Added Refined Steel Ingots.
*Made Refined Iron -> Steel Block.
*Maps instead of Vectors for recipes.
*New recipe managing for Metallurgic Infuser.
*Cleaned up imports.
*Added new Javadocs.
*Made Electrolytic Separator texture changed based on what gas it is
outputting.
*Other various bugfixes.
This commit is contained in:
Aidan Brady 2012-12-20 16:53:39 -05:00
parent 75e762fd35
commit 45b4510dc7
162 changed files with 1723 additions and 826 deletions

View file

Before

Width:  |  Height:  |  Size: 5.9 KiB

After

Width:  |  Height:  |  Size: 5.9 KiB

View file

Before

Width:  |  Height:  |  Size: 6.2 KiB

After

Width:  |  Height:  |  Size: 6.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.3 KiB

After

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.5 KiB

View file

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 27 KiB

After

Width:  |  Height:  |  Size: 28 KiB

View file

@ -1,88 +0,0 @@
package mekanism.common;
import java.util.*;
import net.minecraft.src.*;
/**
* Class used to handle machine recipes. This is used for both adding recipes and checking outputs.
* @author AidanBrady
*
*/
public final class RecipeHandler
{
/**
* Add an Enrichment Chamber recipe.
* @param input - input ItemStack
* @param output - output ItemStack
*/
public static void addEnrichmentChamberRecipe(ItemStack input, ItemStack output)
{
TileEntityEnrichmentChamber.recipes.add(new AbstractMap.SimpleEntry(input, output));
}
/**
* Add a Platinum Compressor recipe.
* @param input - input ItemStack
* @param output - output ItemStack
*/
public static void addPlatinumCompressorRecipe(ItemStack input, ItemStack output)
{
TileEntityPlatinumCompressor.recipes.add(new AbstractMap.SimpleEntry(input, output));
}
/**
* Add a Combiner recipe.
* @param input - input ItemStack
* @param output - output ItemStack
*/
public static void addCombinerRecipe(ItemStack input, ItemStack output)
{
TileEntityCombiner.recipes.add(new AbstractMap.SimpleEntry(input, output));
}
/**
* Add a Crusher recipe.
* @param input - input ItemStack
* @param output - output ItemStack
*/
public static void addCrusherRecipe(ItemStack input, ItemStack output)
{
TileEntityCrusher.recipes.add(new AbstractMap.SimpleEntry(input, output));
}
/**
* Add a Theoretical Elementizer recipe.
* @param input - input ItemStack
* @param output - output ItemStack
*/
public static void addTheoreticalElementizerRecipe(ItemStack input, ItemStack output)
{
TileEntityTheoreticalElementizer.recipes.add(new AbstractMap.SimpleEntry(input, output));
}
/**
* Gets the output ItemStack of the ItemStack in the parameters.
* @param itemstack - input ItemStack
* @param flag - whether or not to decrease stack size
* @param recipes - List object of recipes
* @return output ItemStack
*/
public static ItemStack getOutput(ItemStack itemstack, boolean flag, List recipes)
{
for(Iterator iterator = recipes.iterator(); iterator.hasNext();)
{
Map.Entry entry = (Map.Entry)iterator.next();
if(((ItemStack)entry.getKey()).isItemEqual(itemstack) && itemstack.stackSize >= ((ItemStack)entry.getKey()).stackSize)
{
if (flag)
{
itemstack.stackSize -= ((ItemStack)entry.getKey()).stackSize;
}
return ((ItemStack)entry.getValue()).copy();
}
}
return null;
}
}

View file

@ -1,15 +1,6 @@
package mekanism.api;
import java.util.List;
import buildcraft.api.power.IPowerReceptor;
import dan200.computer.api.IPeripheral;
import ic2.api.IEnergySink;
import ic2.api.IWrenchable;
import net.minecraft.src.*;
import net.minecraftforge.common.ISidedInventory;
import java.util.Map;
/**
* A group of common methods used by all Mekanism machines.
@ -38,5 +29,5 @@ public interface IElectricMachine
* Gets the recipe vector from the machine tile entity.
* @return recipes
*/
public List getRecipes();
public Map getRecipes();
}

View file

@ -1,7 +1,7 @@
package mekanism.api;
import mekanism.api.Tier.EnergyCubeTier;
import net.minecraft.src.*;
import net.minecraft.item.ItemStack;
public interface IEnergyCube
{

View file

@ -1,6 +1,6 @@
package mekanism.api;
import net.minecraft.src.ItemStack;
import net.minecraft.item.ItemStack;
/**
* Implement this in your Item class if it can be used as a machine upgrade.

View file

@ -1,6 +1,6 @@
package mekanism.api;
import net.minecraft.src.*;
import net.minecraft.item.ItemStack;
/**
* Implement this in your item class if it can store or transfer certain gasses.

View file

@ -1,8 +1,8 @@
package mekanism.api;
import net.minecraft.src.EntityPlayer;
import net.minecraft.src.INetworkManager;
import net.minecraft.src.Packet250CustomPayload;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.network.INetworkManager;
import net.minecraft.network.packet.Packet250CustomPayload;
import com.google.common.io.ByteArrayDataInput;

View file

@ -0,0 +1,20 @@
package mekanism.api;
import net.minecraft.item.ItemStack;
public class Infusion
{
public InfusionType type;
public ItemStack resource;
public Infusion(InfusionType infusiontype, ItemStack itemstack)
{
type = infusiontype;
resource = itemstack;
}
public static Infusion getInfusion(InfusionType type, ItemStack itemstack)
{
return new Infusion(type, itemstack);
}
}

View file

@ -0,0 +1,31 @@
package mekanism.api;
import mekanism.api.Tier.EnergyCubeTier;
public enum InfusionType
{
COAL("COAL"),
TIN("TIN"),
NONE("NONE");
public String name;
public static InfusionType getFromName(String infusionName)
{
for(InfusionType type : values())
{
if(infusionName.contains(type.name))
{
return type;
}
}
System.out.println("[Mekanism] Invalid tier identifier when retrieving with name.");
return NONE;
}
private InfusionType(String s)
{
name = s;
}
}

View file

@ -2,9 +2,10 @@ package mekanism.api;
import java.util.List;
import mekanism.common.Mekanism;
import mekanism.common.MekanismUtils;
import net.minecraft.src.*;
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
{

View file

@ -1,6 +1,7 @@
package mekanism.api;
import net.minecraft.src.*;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
/**
* Use this class's 'getItem()' method to retrieve ItemStacks from the 'Mekanism'

View file

@ -1,6 +1,6 @@
package mekanism.api;
import net.minecraft.src.*;
import net.minecraft.creativetab.CreativeTabs;
/**
* Class used to indirectly reference the Mekanism creative tab.

View file

@ -1,37 +1,28 @@
package mekanism.client;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Properties;
import cpw.mods.fml.client.FMLClientHandler;
import cpw.mods.fml.client.TextureFXManager;
import cpw.mods.fml.client.registry.ClientRegistry;
import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
import cpw.mods.fml.client.registry.RenderingRegistry;
import cpw.mods.fml.common.Side;
import cpw.mods.fml.common.network.IGuiHandler;
import cpw.mods.fml.common.registry.TickRegistry;
import mekanism.common.CommonProxy;
import mekanism.common.EntityObsidianTNT;
import mekanism.common.Mekanism;
import mekanism.common.MekanismUtils;
import mekanism.common.TileEntityAdvancedElectricMachine;
import mekanism.common.TileEntityCombiner;
import mekanism.common.TileEntityControlPanel;
import mekanism.common.TileEntityCrusher;
import mekanism.common.TileEntityElectricMachine;
import mekanism.common.TileEntityEnrichmentChamber;
import mekanism.common.TileEntityGasTank;
import mekanism.common.TileEntityPlatinumCompressor;
import mekanism.common.TileEntityEnergyCube;
import mekanism.common.TileEntityGasTank;
import mekanism.common.TileEntityMetallurgicInfuser;
import mekanism.common.TileEntitySmeltingFactory;
import mekanism.common.TileEntityTheoreticalElementizer;
import net.minecraft.client.Minecraft;
import net.minecraft.src.*;
import net.minecraft.client.gui.GuiScreen;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.world.World;
import net.minecraftforge.client.MinecraftForgeClient;
import cpw.mods.fml.client.FMLClientHandler;
import cpw.mods.fml.client.TextureFXManager;
import cpw.mods.fml.client.registry.RenderingRegistry;
import cpw.mods.fml.common.registry.TickRegistry;
import cpw.mods.fml.relauncher.Side;
/**
* Client proxy for the Mekanism mod.
@ -62,6 +53,8 @@ public class ClientProxy extends CommonProxy
MinecraftForgeClient.preloadTexture("/resources/mekanism/animate/ElementizerFront.png");
MinecraftForgeClient.preloadTexture("/resources/mekanism/animate/ElementizerBack.png");
MinecraftForgeClient.preloadTexture("/resources/mekanism/animate/ElementizerSide.png");
MinecraftForgeClient.preloadTexture("/resources/mekanism/animate/HydrogenFront.png");
MinecraftForgeClient.preloadTexture("/resources/mekanism/animate/HydrogenSide.png");
//Register animated TextureFX
try {
@ -71,6 +64,8 @@ public class ClientProxy extends CommonProxy
TextureFXManager.instance().addAnimation(new TextureAnimatedFX("/resources/mekanism/animate/ElementizerFront.png", Mekanism.ANIMATED_TEXTURE_INDEX+4));
TextureFXManager.instance().addAnimation(new TextureAnimatedFX("/resources/mekanism/animate/ElementizerBack.png", Mekanism.ANIMATED_TEXTURE_INDEX+5));
TextureFXManager.instance().addAnimation(new TextureAnimatedFX("/resources/mekanism/animate/ElementizerSide.png", Mekanism.ANIMATED_TEXTURE_INDEX+6));
TextureFXManager.instance().addAnimation(new TextureAnimatedFX("/resources/mekanism/animate/InfuserFront.png", Mekanism.ANIMATED_TEXTURE_INDEX+7));
TextureFXManager.instance().addAnimation(new TextureAnimatedFX("/resources/mekanism/animate/InfuserSide.png", Mekanism.ANIMATED_TEXTURE_INDEX+8));
} catch (IOException e) {
System.err.println("[Mekanism] Error registering animation with FML: " + e.getMessage());
}
@ -132,6 +127,8 @@ public class ClientProxy extends CommonProxy
return new GuiGasTank(player.inventory, (TileEntityGasTank)tileEntity);
case 11:
return new GuiSmeltingFactory(player.inventory, (TileEntitySmeltingFactory)tileEntity);
case 12:
return new GuiMetallurgicInfuser(player.inventory, (TileEntityMetallurgicInfuser)tileEntity);
}
return null;
}

View file

@ -1,10 +1,11 @@
package mekanism.client;
import org.lwjgl.opengl.GL11;
import mekanism.common.ContainerAdvancedElectricMachine;
import mekanism.common.TileEntityAdvancedElectricMachine;
import net.minecraft.src.*;
import net.minecraft.client.gui.inventory.GuiContainer;
import net.minecraft.entity.player.InventoryPlayer;
import org.lwjgl.opengl.GL11;
public class GuiAdvancedElectricMachine extends GuiContainer
{

View file

@ -1,17 +1,16 @@
package mekanism.client;
import org.lwjgl.opengl.GL11;
import mekanism.api.IAccessibleGui;
import mekanism.common.EnumColor;
import mekanism.common.MekanismUtils;
import mekanism.common.PacketHandler;
import mekanism.common.TileEntityControlPanel;
import net.minecraft.src.EntityPlayer;
import net.minecraft.src.GuiButton;
import net.minecraft.src.GuiScreen;
import net.minecraft.src.GuiTextField;
import net.minecraft.src.World;
import net.minecraft.client.gui.GuiButton;
import net.minecraft.client.gui.GuiScreen;
import net.minecraft.client.gui.GuiTextField;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.world.World;
import org.lwjgl.opengl.GL11;
public class GuiControlPanel extends GuiScreen
{

View file

@ -1,14 +1,10 @@
package mekanism.client;
import java.io.IOException;
import java.net.URL;
import org.lwjgl.Sys;
import mekanism.common.EnumColor;
import mekanism.common.Mekanism;
import mekanism.common.MekanismUtils;
import net.minecraft.src.*;
import net.minecraft.client.gui.GuiButton;
import net.minecraft.client.gui.GuiScreen;
public class GuiCredits extends GuiScreen {

View file

@ -1,10 +1,11 @@
package mekanism.client;
import org.lwjgl.opengl.GL11;
import mekanism.common.ContainerElectricMachine;
import mekanism.common.TileEntityElectricMachine;
import net.minecraft.src.*;
import net.minecraft.client.gui.inventory.GuiContainer;
import net.minecraft.entity.player.InventoryPlayer;
import org.lwjgl.opengl.GL11;
public class GuiElectricMachine extends GuiContainer
{

View file

@ -1,15 +1,16 @@
package mekanism.client;
import mekanism.common.ContainerEnergyCube;
import mekanism.common.TileEntityEnergyCube;
import net.minecraft.client.gui.inventory.GuiContainer;
import net.minecraft.entity.player.InventoryPlayer;
import net.minecraft.util.StatCollector;
import org.lwjgl.opengl.GL11;
import universalelectricity.core.electricity.ElectricInfo;
import universalelectricity.core.electricity.ElectricInfo.ElectricUnit;
import mekanism.common.ContainerEnergyCube;
import mekanism.common.MekanismUtils;
import mekanism.common.TileEntityEnergyCube;
import net.minecraft.src.*;
public class GuiEnergyCube extends GuiContainer
{
private TileEntityEnergyCube tileEntity;

View file

@ -1,10 +1,12 @@
package mekanism.client;
import org.lwjgl.opengl.GL11;
import mekanism.common.ContainerGasTank;
import mekanism.common.TileEntityGasTank;
import net.minecraft.src.*;
import net.minecraft.client.gui.inventory.GuiContainer;
import net.minecraft.entity.player.InventoryPlayer;
import net.minecraft.util.StatCollector;
import org.lwjgl.opengl.GL11;
public class GuiGasTank extends GuiContainer
{

View file

@ -0,0 +1,69 @@
package mekanism.client;
import mekanism.api.InfusionType;
import mekanism.common.ContainerMetallurgicInfuser;
import mekanism.common.PacketHandler;
import mekanism.common.TileEntityMetallurgicInfuser;
import net.minecraft.client.gui.inventory.GuiContainer;
import net.minecraft.entity.player.InventoryPlayer;
import org.lwjgl.opengl.GL11;
public class GuiMetallurgicInfuser extends GuiContainer
{
public TileEntityMetallurgicInfuser tileEntity;
private int guiWidth;
private int guiHeight;
public GuiMetallurgicInfuser(InventoryPlayer inventory, TileEntityMetallurgicInfuser tentity)
{
super(new ContainerMetallurgicInfuser(inventory, tentity));
tileEntity = tentity;
}
@Override
protected void mouseClicked(int x, int y, int button)
{
super.mouseClicked(x, y, button);
int xAxis = (x - (width - xSize) / 2);
int yAxis = (y - (height - ySize) / 2);
if(xAxis > 148 && xAxis < 168 && yAxis > 73 && yAxis < 82)
{
tileEntity.infuseStored = 0;
PacketHandler.sendTileEntityPacketToServer(tileEntity, tileEntity.infuseStored);
mc.sndManager.playSoundFX("random.click", 1.0F, 1.0F);
}
}
@Override
protected void drawGuiContainerForegroundLayer(int par1, int par2)
{
fontRenderer.drawString(tileEntity.fullName, 45, 6, 0x404040);
fontRenderer.drawString("Inventory", 15, (ySize - 96) + 2, 0x404040);
}
@Override
protected void drawGuiContainerBackgroundLayer(float par1, int par2, int par3)
{
int texture = mc.renderEngine.getTexture("/resources/mekanism/gui/GuiMetallurgicInfuser.png");
GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F);
mc.renderEngine.bindTexture(texture);
guiWidth = (width - xSize) / 2;
guiHeight = (height - ySize) / 2;
drawTexturedModalRect(guiWidth, guiHeight, 0, 0, xSize, ySize);
int displayInt;
displayInt = tileEntity.getScaledInfuseLevel(52);
drawTexturedModalRect(guiWidth + 7, guiHeight + 27 + 52 - displayInt, 176 + (tileEntity.type == InfusionType.COAL ? 4 : 0), 52 + (tileEntity.type == InfusionType.TIN ? 52 : 0) - displayInt, 4, displayInt);
displayInt = tileEntity.getScaledProgress(32);
drawTexturedModalRect(guiWidth + 72, guiHeight + 47, 176, 52 + 52, displayInt + 1, 8);
displayInt = tileEntity.getScaledEnergyLevel(52);
drawTexturedModalRect(guiWidth + 165, guiHeight + 17 + 52 - displayInt, 176, 52 - displayInt, 4, displayInt);
}
}

View file

@ -1,13 +1,12 @@
package mekanism.client;
import org.lwjgl.opengl.GL11;
import mekanism.api.Tier.SmeltingFactoryTier;
import mekanism.common.ContainerElectricMachine;
import mekanism.common.ContainerSmeltingFactory;
import mekanism.common.TileEntityElectricMachine;
import mekanism.common.TileEntitySmeltingFactory;
import net.minecraft.src.*;
import net.minecraft.client.gui.inventory.GuiContainer;
import net.minecraft.entity.player.InventoryPlayer;
import org.lwjgl.opengl.GL11;
public class GuiSmeltingFactory extends GuiContainer
{

View file

@ -1,11 +1,13 @@
package mekanism.client;
import org.lwjgl.opengl.GL11;
import mekanism.common.EnumPacketType;
import mekanism.common.MekanismUtils;
import mekanism.common.PacketHandler;
import net.minecraft.src.*;
import net.minecraft.client.gui.GuiButton;
import net.minecraft.client.gui.GuiScreen;
import net.minecraft.entity.player.EntityPlayer;
import org.lwjgl.opengl.GL11;
public class GuiStopwatch extends GuiScreen {

View file

@ -1,12 +1,8 @@
package mekanism.client;
import org.lwjgl.opengl.GL11;
import mekanism.common.ContainerAdvancedElectricMachine;
import mekanism.common.EnumColor;
import mekanism.common.MekanismUtils;
import mekanism.common.TileEntityTheoreticalElementizer;
import net.minecraft.src.*;
import net.minecraft.entity.player.InventoryPlayer;
public class GuiTheoreticalElementizer extends GuiAdvancedElectricMachine
{

View file

@ -1,12 +1,14 @@
package mekanism.client;
import org.lwjgl.opengl.GL11;
import mekanism.common.EnumPacketType;
import mekanism.common.EnumWeatherType;
import mekanism.common.MekanismUtils;
import mekanism.common.PacketHandler;
import net.minecraft.src.*;
import net.minecraft.client.gui.GuiButton;
import net.minecraft.client.gui.GuiScreen;
import net.minecraft.entity.player.EntityPlayer;
import org.lwjgl.opengl.GL11;
public class GuiWeatherOrb extends GuiScreen {

View file

@ -1,16 +1,17 @@
package mekanism.client;
import java.util.Random;
import org.lwjgl.opengl.GL11;
import mekanism.api.IEnergyCube;
import mekanism.api.Tier.EnergyCubeTier;
import mekanism.common.Mekanism;
import net.minecraft.src.*;
import net.minecraft.block.Block;
import net.minecraft.client.renderer.RenderBlocks;
import net.minecraft.client.renderer.Tessellator;
import net.minecraft.item.ItemStack;
import net.minecraftforge.client.ForgeHooksClient;
import net.minecraftforge.client.IItemRenderer;
import org.lwjgl.opengl.GL11;
public class ItemRenderingHandler implements IItemRenderer
{
@Override
@ -50,7 +51,7 @@ public class ItemRenderingHandler implements IItemRenderer
public void renderItem(RenderBlocks renderer, int metadata)
{
Block block = Block.blocksList[Mekanism.energyCubeID];
renderer.func_83018_a(block);
renderer.updateCustomBlockBounds(block);
block.setBlockBoundsForItemRender();
if (renderer.useInventoryTint)

View file

@ -2,7 +2,9 @@ package mekanism.client;
import mekanism.common.EntityObsidianTNT;
import mekanism.common.Mekanism;
import net.minecraft.src.*;
import net.minecraft.client.renderer.RenderBlocks;
import net.minecraft.client.renderer.entity.Render;
import net.minecraft.entity.Entity;
import org.lwjgl.opengl.GL11;

View file

@ -1,17 +1,10 @@
package mekanism.client;
import java.io.File;
import java.net.URL;
import cpw.mods.fml.client.FMLClientHandler;
import mekanism.common.Mekanism;
import net.minecraft.client.Minecraft;
import net.minecraft.src.Block;
import net.minecraft.src.EntityPlayer;
import net.minecraft.src.ModLoader;
import net.minecraft.src.World;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.world.World;
import paulscode.sound.SoundSystem;
/**

View file

@ -4,9 +4,9 @@ import java.util.ArrayList;
import java.util.List;
import java.util.Random;
import cpw.mods.fml.client.FMLClientHandler;
import net.minecraft.world.World;
import paulscode.sound.SoundSystem;
import net.minecraft.src.*;
import cpw.mods.fml.client.FMLClientHandler;
/**
* SoundHandler - a class that handles all Sounds used by Mekanism.

View file

@ -1,22 +1,14 @@
package mekanism.client;
import java.awt.image.BufferedImage;
import java.io.IOException;
import java.net.URL;
import java.util.ArrayList;
import javax.imageio.ImageIO;
import net.minecraft.client.renderer.RenderEngine;
import net.minecraft.src.ModTextureAnimation;
import org.lwjgl.opengl.GL11;
import cpw.mods.fml.client.FMLClientHandler;
import cpw.mods.fml.client.TextureFXManager;
import cpw.mods.fml.client.registry.RenderingRegistry;
import net.minecraft.client.Minecraft;
import net.minecraft.src.ModLoader;
import net.minecraft.src.ModTextureAnimation;
import net.minecraft.src.RenderEngine;
public class TextureAnimatedFX extends ModTextureAnimation
{

View file

@ -4,11 +4,20 @@ import java.util.List;
import java.util.Random;
import cpw.mods.fml.client.FMLClientHandler;
import cpw.mods.fml.common.Side;
import cpw.mods.fml.common.asm.SideOnly;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import mekanism.client.GuiControlPanel;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.EntityLiving;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.src.*;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.world.IBlockAccess;
import net.minecraft.world.World;
import net.minecraftforge.common.ForgeChunkManager;
/**
@ -18,7 +27,7 @@ import net.minecraftforge.common.ForgeChunkManager;
* 2: Refined Obsidian
* 3: Coal Block
* 4: Refined Glowstone
* 5: Reinforced Iron
* 5: Steel Block
* 6: Control Panel
* @author AidanBrady
*

View file

@ -1,20 +1,31 @@
package mekanism.common;
import ic2.api.EnergyNet;
import java.util.ArrayList;
import java.util.List;
import java.util.Random;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import universalelectricity.core.implement.IItemElectric;
import cpw.mods.fml.common.Side;
import cpw.mods.fml.common.asm.SideOnly;
import mekanism.api.IEnergyCube;
import mekanism.api.Tier.EnergyCubeTier;
import mekanism.generators.common.MekanismGenerators;
import mekanism.generators.common.BlockGenerator.GeneratorType;
import net.minecraft.block.BlockContainer;
import net.minecraft.block.material.Material;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.EntityLiving;
import net.minecraft.entity.item.EntityItem;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.src.*;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.MathHelper;
import net.minecraft.world.IBlockAccess;
import net.minecraft.world.World;
import net.minecraftforge.common.ForgeDirection;
/**
@ -180,7 +191,7 @@ public class BlockEnergyCube extends BlockContainer
if (slotStack.hasTagCompound())
{
entityItem.item.setTagCompound((NBTTagCompound)slotStack.getTagCompound().copy());
entityItem.func_92014_d().setTagCompound((NBTTagCompound)slotStack.getTagCompound().copy());
}
float motion = 0.05F;
@ -199,11 +210,11 @@ public class BlockEnergyCube extends BlockContainer
entityItem.motionY = powerRand.nextGaussian() * motion + 0.2F;
entityItem.motionZ = powerRand.nextGaussian() * motion;
IEnergyCube energyCube = (IEnergyCube)entityItem.item.getItem();
energyCube.setTier(entityItem.item, tileEntity.tier);
IEnergyCube energyCube = (IEnergyCube)entityItem.func_92014_d().getItem();
energyCube.setTier(entityItem.func_92014_d(), tileEntity.tier);
IItemElectric electricItem = (IItemElectric)entityItem.item.getItem();
electricItem.setJoules(tileEntity.electricityStored, entityItem.item);
IItemElectric electricItem = (IItemElectric)entityItem.func_92014_d().getItem();
electricItem.setJoules(tileEntity.electricityStored, entityItem.func_92014_d());
world.spawnEntityInWorld(entityItem);
}

View file

@ -2,10 +2,19 @@ package mekanism.common;
import java.util.Random;
import cpw.mods.fml.common.Side;
import cpw.mods.fml.common.asm.SideOnly;
import net.minecraft.src.*;
import net.minecraft.block.BlockContainer;
import net.minecraft.block.material.Material;
import net.minecraft.entity.EntityLiving;
import net.minecraft.entity.item.EntityItem;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.MathHelper;
import net.minecraft.world.IBlockAccess;
import net.minecraft.world.World;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
public class BlockGasTank extends BlockContainer
{
@ -103,7 +112,7 @@ public class BlockGasTank extends BlockContainer
if (slotStack.hasTagCompound())
{
item.item.setTagCompound((NBTTagCompound)slotStack.getTagCompound().copy());
item.func_92014_d().setTagCompound((NBTTagCompound)slotStack.getTagCompound().copy());
}
float k = 0.05F;

View file

@ -1,15 +1,23 @@
package mekanism.common;
import ic2.api.EnergyNet;
import java.util.List;
import java.util.Random;
import cpw.mods.fml.common.Side;
import cpw.mods.fml.common.asm.SideOnly;
import mekanism.generators.common.BlockGenerator.GeneratorType;
import net.minecraft.src.*;
import net.minecraft.block.BlockContainer;
import net.minecraft.block.material.Material;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.EntityLiving;
import net.minecraft.entity.item.EntityItem;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.MathHelper;
import net.minecraft.world.IBlockAccess;
import net.minecraft.world.World;
import net.minecraftforge.common.ForgeDirection;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
/**
* Block class for handling multiple machine block IDs.
@ -21,6 +29,7 @@ import net.minecraftforge.common.ForgeDirection;
* 5: Basic Smelting Factory
* 6: Advanced Smelting Factory
* 7: Ultimate Smelting Factory
* 8: Metallurgic Infuser
* @author AidanBrady
*
*/
@ -178,6 +187,16 @@ public class BlockMachine extends BlockContainer
return 46;
}
}
else if(meta == 8)
{
if(side == 3)
{
return 33;
}
else {
return 32;
}
}
else {
return 0;
}
@ -280,6 +299,16 @@ public class BlockMachine extends BlockContainer
return 46;
}
}
else if(metadata == 8)
{
if(side == tileEntity.facing)
{
return MekanismUtils.isActive(world, x, y, z) ? Mekanism.ANIMATED_TEXTURE_INDEX+7 : 33;
}
else {
return MekanismUtils.isActive(world, x, y, z) ? Mekanism.ANIMATED_TEXTURE_INDEX+8 : 32;
}
}
else {
return 0;
}
@ -303,6 +332,7 @@ public class BlockMachine extends BlockContainer
list.add(new ItemStack(i, 1, 5));
list.add(new ItemStack(i, 1, 6));
list.add(new ItemStack(i, 1, 7));
list.add(new ItemStack(i, 1, 8));
}
@Override
@ -336,7 +366,7 @@ public class BlockMachine extends BlockContainer
if (slotStack.hasTagCompound())
{
item.item.setTagCompound((NBTTagCompound)slotStack.getTagCompound().copy());
item.func_92014_d().setTagCompound((NBTTagCompound)slotStack.getTagCompound().copy());
}
float k = 0.05F;
@ -402,7 +432,8 @@ public class BlockMachine extends BlockContainer
THEORETICAL_ELEMENTIZER(4, 7, TileEntityTheoreticalElementizer.class),
BASIC_SMELTING_FACTORY(5, 11, TileEntitySmeltingFactory.class),
ADVANCED_SMELTING_FACTORY(6, 11, TileEntityAdvancedSmeltingFactory.class),
ULTIMATE_SMELTING_FACTORY(7, 11, TileEntityUltimateSmeltingFactory.class);
ULTIMATE_SMELTING_FACTORY(7, 11, TileEntityUltimateSmeltingFactory.class),
METALLURGIC_INFUSER(8, 12, TileEntityMetallurgicInfuser.class);
public int meta;
public int guiId;

View file

@ -1,10 +1,13 @@
package mekanism.common;
import java.util.ArrayList;
import java.util.Random;
import cpw.mods.fml.common.registry.BlockProxy;
import net.minecraft.src.*;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.world.World;
public class BlockObsidianTNT extends Block
{

View file

@ -2,9 +2,13 @@ package mekanism.common;
import java.util.List;
import cpw.mods.fml.common.Side;
import cpw.mods.fml.common.asm.SideOnly;
import net.minecraft.src.*;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.ItemStack;
import net.minecraft.world.World;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
/**
* Block class for handling multiple ore block IDs.

View file

@ -3,14 +3,9 @@ package mekanism.common;
import java.util.Arrays;
import java.util.List;
import cpw.mods.fml.server.FMLServerHandler;
import net.minecraft.command.CommandBase;
import net.minecraft.command.ICommandSender;
import net.minecraft.server.MinecraftServer;
import net.minecraft.src.CommandBase;
import net.minecraft.src.EntityPlayerMP;
import net.minecraft.src.ICommandSender;
import net.minecraft.src.PlayerNotFoundException;
import net.minecraft.src.WrongUsageException;
public class CommandMekanism extends CommandBase
{

View file

@ -1,16 +1,10 @@
package mekanism.common;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Properties;
import net.minecraft.client.Minecraft;
import net.minecraft.src.*;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.inventory.Container;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.world.World;
import net.minecraftforge.common.Configuration;
import cpw.mods.fml.common.network.IGuiHandler;
import cpw.mods.fml.common.registry.GameRegistry;
/**
* Common proxy for the Mekanism mod.
@ -128,6 +122,8 @@ public class CommonProxy
return new ContainerGasTank(player.inventory, (TileEntityGasTank)tileEntity);
case 11:
return new ContainerSmeltingFactory(player.inventory, (TileEntitySmeltingFactory)tileEntity);
case 12:
return new ContainerMetallurgicInfuser(player.inventory, (TileEntityMetallurgicInfuser)tileEntity);
}
return null;
}

View file

@ -1,9 +1,15 @@
package mekanism.common;
import ic2.api.IElectricItem;
import universalelectricity.core.implement.IItemElectric;
import mekanism.api.ItemMachineUpgrade;
import net.minecraft.src.*;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.InventoryPlayer;
import net.minecraft.inventory.Container;
import net.minecraft.inventory.Slot;
import net.minecraft.inventory.SlotFurnace;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import universalelectricity.core.implement.IItemElectric;
public class ContainerAdvancedElectricMachine extends Container
{

View file

@ -1,9 +1,15 @@
package mekanism.common;
import ic2.api.IElectricItem;
import universalelectricity.core.implement.IItemElectric;
import mekanism.api.ItemMachineUpgrade;
import net.minecraft.src.*;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.InventoryPlayer;
import net.minecraft.inventory.Container;
import net.minecraft.inventory.Slot;
import net.minecraft.inventory.SlotFurnace;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import universalelectricity.core.implement.IItemElectric;
public class ContainerElectricMachine extends Container
{

View file

@ -1,9 +1,13 @@
package mekanism.common;
import ic2.api.IElectricItem;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.InventoryPlayer;
import net.minecraft.inventory.Container;
import net.minecraft.inventory.Slot;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import universalelectricity.core.implement.IItemElectric;
import mekanism.api.*;
import net.minecraft.src.*;
public class ContainerEnergyCube extends Container
{

View file

@ -1,7 +1,12 @@
package mekanism.common;
import mekanism.api.*;
import net.minecraft.src.*;
import mekanism.api.EnumGas;
import mekanism.api.IStorageTank;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.InventoryPlayer;
import net.minecraft.inventory.Container;
import net.minecraft.inventory.Slot;
import net.minecraft.item.ItemStack;
public class ContainerGasTank extends Container
{

View file

@ -0,0 +1,136 @@
package mekanism.common;
import ic2.api.IElectricItem;
import mekanism.api.Infusion;
import mekanism.api.InfusionType;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.InventoryPlayer;
import net.minecraft.inventory.Container;
import net.minecraft.inventory.Slot;
import net.minecraft.inventory.SlotFurnace;
import net.minecraft.item.ItemStack;
import net.minecraftforge.oredict.OreDictionary;
import universalelectricity.core.implement.IItemElectric;
public class ContainerMetallurgicInfuser extends Container
{
private TileEntityMetallurgicInfuser tileEntity;
public ContainerMetallurgicInfuser(InventoryPlayer inventory, TileEntityMetallurgicInfuser tentity)
{
tileEntity = tentity;
addSlotToContainer(new SlotMachineUpgrade(tentity, 0, 7, 7));
addSlotToContainer(new Slot(tentity, 1, 17, 35));
addSlotToContainer(new Slot(tentity, 2, 51, 43));
addSlotToContainer(new SlotFurnace(inventory.player, tentity, 3, 109, 43));
addSlotToContainer(new SlotEnergy(tentity, 4, 143, 35));
int slotX;
for (slotX = 0; slotX < 3; ++slotX)
{
for (int slotY = 0; slotY < 9; ++slotY)
{
addSlotToContainer(new Slot(inventory, slotY + slotX * 9 + 9, 8 + slotY * 18, 84 + slotX * 18));
}
}
for (slotX = 0; slotX < 9; ++slotX)
{
addSlotToContainer(new Slot(inventory, slotX, 8 + slotX * 18, 142));
}
tileEntity.openChest();
}
@Override
public void onCraftGuiClosed(EntityPlayer entityplayer)
{
super.onCraftGuiClosed(entityplayer);
tileEntity.closeChest();
}
@Override
public boolean canInteractWith(EntityPlayer par1EntityPlayer)
{
return tileEntity.isUseableByPlayer(par1EntityPlayer);
}
@Override
public ItemStack transferStackInSlot(EntityPlayer player, int slotID)
{
ItemStack stack = null;
Slot currentSlot = (Slot)inventorySlots.get(slotID);
if(currentSlot != null && currentSlot.getHasStack())
{
ItemStack slotStack = currentSlot.getStack();
stack = slotStack.copy();
if(slotID != 0 && slotID != 1 && slotID != 2 && slotID != 3 && slotID != 4)
{
boolean isTin = false;
for(ItemStack ore : OreDictionary.getOres("dustTin"))
{
if(ore.isItemEqual(slotStack))
{
isTin = true;
}
}
if(isTin && (tileEntity.type == InfusionType.TIN || tileEntity.type == InfusionType.NONE))
{
if(!mergeItemStack(slotStack, 1, 2, false))
{
return null;
}
}
else if(slotStack.isItemEqual(new ItemStack(Mekanism.CompressedCarbon)) && (tileEntity.type == InfusionType.COAL || tileEntity.type == InfusionType.NONE))
{
if(!mergeItemStack(slotStack, 1, 2, false))
{
return null;
}
}
else if(slotStack.getItem() instanceof IItemElectric || slotStack.getItem() instanceof IElectricItem)
{
if(!mergeItemStack(slotStack, 4, 5, false))
{
return null;
}
}
else if(RecipeHandler.getOutput(Infusion.getInfusion(tileEntity.type, slotStack), false, TileEntityMetallurgicInfuser.recipes) != null)
{
if(!mergeItemStack(slotStack, 2, 3, false))
{
return null;
}
}
}
else {
if(!mergeItemStack(slotStack, 5, inventorySlots.size(), true))
{
return null;
}
}
if (slotStack.stackSize == 0)
{
currentSlot.putStack((ItemStack)null);
}
else
{
currentSlot.onSlotChanged();
}
if (slotStack.stackSize == stack.stackSize)
{
return null;
}
currentSlot.onPickupFromSlot(player, slotStack);
}
return stack;
}
}

View file

@ -1,10 +1,17 @@
package mekanism.common;
import ic2.api.IElectricItem;
import universalelectricity.core.implement.IItemElectric;
import mekanism.api.ItemMachineUpgrade;
import mekanism.api.Tier.SmeltingFactoryTier;
import net.minecraft.src.*;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.InventoryPlayer;
import net.minecraft.inventory.Container;
import net.minecraft.inventory.Slot;
import net.minecraft.inventory.SlotFurnace;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.item.crafting.FurnaceRecipes;
import universalelectricity.core.implement.IItemElectric;
public class ContainerSmeltingFactory extends Container
{

View file

@ -1,7 +1,7 @@
package mekanism.common;
import net.minecraft.src.EntityPlayer;
import net.minecraft.src.World;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.world.World;
import cpw.mods.fml.common.network.IGuiHandler;
/**

View file

@ -1,6 +1,7 @@
package mekanism.common;
import net.minecraft.src.*;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.ItemStack;
public class CreativeTabMekanism extends CreativeTabs
{

View file

@ -1,6 +1,8 @@
package mekanism.common;
import net.minecraft.src.*;
import net.minecraft.entity.Entity;
import net.minecraft.util.DamageSource;
import net.minecraft.util.EntityDamageSourceIndirect;
public class DamageSourceMekanism extends EntityDamageSourceIndirect
{

View file

@ -1,6 +1,8 @@
package mekanism.common;
import net.minecraft.src.*;
import net.minecraft.entity.Entity;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.world.World;
public class EntityObsidianTNT extends Entity
{

View file

@ -1,7 +1,19 @@
package mekanism.common;
import java.util.List;
import net.minecraft.block.Block;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.src.*;
import net.minecraft.util.AxisAlignedBB;
import net.minecraft.util.MathHelper;
import net.minecraft.util.MovingObjectPosition;
import net.minecraft.util.Vec3;
import net.minecraft.world.World;
import java.util.Random;
public abstract class EntityProjectile extends Entity

View file

@ -2,11 +2,12 @@ package mekanism.common;
import java.util.List;
import universalelectricity.prefab.ItemElectric;
import net.minecraft.src.*;
import net.minecraftforge.common.MinecraftForge;
import net.minecraftforge.event.entity.living.LivingAttackEvent;
import net.minecraft.block.Block;
import net.minecraft.entity.EntityLiving;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.util.DamageSource;
import net.minecraft.world.World;
public class ItemAtomicDisassembler extends ItemEnergized
{

View file

@ -1,6 +1,8 @@
package mekanism.common;
import net.minecraft.src.*;
import net.minecraft.block.Block;
import net.minecraft.item.ItemBlock;
import net.minecraft.item.ItemStack;
/**
* Item class for handling multiple metal block IDs.
@ -9,7 +11,7 @@ import net.minecraft.src.*;
* 2: Refined Obsidian
* 3: Coal Block
* 4: Refined Glowstone
* 5: Reinforced Iron
* 5: Steel Block
* 6: Control Panel
* @author AidanBrady
*
@ -59,7 +61,7 @@ public class ItemBlockBasic extends ItemBlock
name = "RefinedGlowstone";
break;
case 5:
name = "ReinforcedIron";
name = "SteelBlock";
break;
case 6:
name = "ControlPanel";

View file

@ -2,12 +2,19 @@ package mekanism.common;
import java.util.List;
import mekanism.api.IEnergyCube;
import mekanism.api.Tier.EnergyCubeTier;
import net.minecraft.block.Block;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemBlock;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.nbt.NBTTagFloat;
import net.minecraft.world.World;
import universalelectricity.core.electricity.ElectricInfo;
import universalelectricity.core.electricity.ElectricInfo.ElectricUnit;
import universalelectricity.core.implement.IItemElectric;
import mekanism.api.IEnergyCube;
import mekanism.api.Tier.EnergyCubeTier;
import net.minecraft.src.*;
public class ItemBlockEnergyCube extends ItemBlock implements IItemElectric, IEnergyCube
{

View file

@ -1,8 +1,8 @@
package mekanism.common;
import net.minecraft.src.Block;
import net.minecraft.src.ItemBlock;
import net.minecraft.src.ItemStack;
import net.minecraft.block.Block;
import net.minecraft.item.ItemBlock;
import net.minecraft.item.ItemStack;
/**
* Item class for handling multiple machine block IDs.
@ -14,6 +14,7 @@ import net.minecraft.src.ItemStack;
* 5: Basic Smelting Factory
* 6: Advanced Smelting Factory
* 7: Ultimate Smelting Factory
* 8: Metallurgic Infuser
* @author AidanBrady
*
*/
@ -70,6 +71,9 @@ public class ItemBlockMachine extends ItemBlock
case 7:
name = "UltimateSmeltingFactory";
break;
case 8:
name = "MetallurgicInfuser";
break;
default:
name = "Unknown";
break;

View file

@ -1,6 +1,8 @@
package mekanism.common;
import net.minecraft.src.*;
import net.minecraft.block.Block;
import net.minecraft.item.ItemBlock;
import net.minecraft.item.ItemStack;
/**
* Item class for handling multiple ore block IDs.

View file

@ -1,15 +1,14 @@
package mekanism.common;
import java.util.ArrayList;
import java.util.List;
import cpw.mods.fml.common.registry.LanguageRegistry;
import net.minecraft.src.*;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.ItemStack;
public class ItemDust extends ItemMekanism
{
public static String[] en_USNames = {"Iron", "Gold", "Platinum",
"Obsidian", "Diamond"};
"Obsidian", "Diamond", "RefinedSteel"};
public ItemDust(int id)
{
@ -28,6 +27,7 @@ public class ItemDust extends ItemMekanism
case 2: return 242;
case 3: return 241;
case 4: return 249;
case 5: return 245;
default: return 0;
}
}
@ -35,7 +35,7 @@ public class ItemDust extends ItemMekanism
@Override
public void getSubItems(int id, CreativeTabs tabs, List itemList)
{
for (int counter = 0; counter <= 4; ++counter)
for (int counter = 0; counter <= 5; ++counter)
{
itemList.add(new ItemStack(this, 1, counter));
}

View file

@ -1,10 +1,16 @@
package mekanism.common;
import java.util.List;
import java.util.Random;
import universalelectricity.prefab.ItemElectric;
import net.minecraft.src.*;
import net.minecraft.enchantment.Enchantment;
import net.minecraft.enchantment.EnchantmentHelper;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.projectile.EntityArrow;
import net.minecraft.item.EnumAction;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.world.World;
public class ItemElectricBow extends ItemEnergized
{

View file

@ -2,14 +2,17 @@ package mekanism.common;
import java.util.List;
import universalelectricity.core.UniversalElectricity;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.nbt.NBTTagFloat;
import net.minecraft.world.World;
import universalelectricity.core.electricity.ElectricInfo;
import universalelectricity.core.electricity.ElectricInfo.ElectricUnit;
import universalelectricity.core.implement.IItemElectric;
import ic2.api.IElectricItem;
import net.minecraft.src.*;
public class ItemEnergized extends ItemMekanism implements IItemElectric
{
/** The maximum amount of energy this item can hold. */

View file

@ -1,14 +1,13 @@
package mekanism.common;
import java.util.ArrayList;
import java.util.List;
import cpw.mods.fml.common.registry.LanguageRegistry;
import net.minecraft.src.*;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.ItemStack;
public class ItemIngot extends ItemMekanism
{
public static String[] en_USNames = {"Obsidian", "Platinum", "Redstone", "Glowstone"};
public static String[] en_USNames = {"Obsidian", "Platinum", "Redstone", "Glowstone", "RefinedSteel"};
public ItemIngot(int id)
{
@ -26,6 +25,7 @@ public class ItemIngot extends ItemMekanism
case 1: return 162;
case 2: return 163;
case 3: return 164;
case 4: return 165;
default: return 0;
}
}
@ -33,7 +33,7 @@ public class ItemIngot extends ItemMekanism
@Override
public void getSubItems(int id, CreativeTabs tabs, List itemList)
{
for (int counter = 0; counter <= 3; ++counter)
for (int counter = 0; counter <= 4; ++counter)
{
itemList.add(new ItemStack(this, 1, counter));
}

View file

@ -1,6 +1,14 @@
package mekanism.common;
import net.minecraft.src.*;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLiving;
import net.minecraft.entity.effect.EntityLightningBolt;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.util.MathHelper;
import net.minecraft.util.MovingObjectPosition;
import net.minecraft.util.Vec3;
import net.minecraft.world.World;
public class ItemLightningRod extends ItemMekanism
{

View file

@ -1,6 +1,6 @@
package mekanism.common;
import net.minecraft.src.*;
import net.minecraft.item.Item;
public class ItemMekanism extends Item
{

View file

@ -1,6 +1,10 @@
package mekanism.common;
import net.minecraft.src.*;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLiving;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.world.World;
public class ItemStopwatch extends ItemMekanism {

View file

@ -2,10 +2,14 @@ package mekanism.common;
import java.util.List;
import ic2.api.IElectricItem;
import mekanism.api.EnumGas;
import mekanism.api.IStorageTank;
import net.minecraft.src.*;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.world.World;
public class ItemStorageTank extends ItemMekanism implements IStorageTank
{

View file

@ -1,6 +1,10 @@
package mekanism.common;
import net.minecraft.src.*;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLiving;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.world.World;
public class ItemWeatherOrb extends ItemMekanism
{

View file

@ -3,7 +3,7 @@ package mekanism.common;
import java.util.ArrayList;
import java.util.List;
import net.minecraft.src.*;
import net.minecraft.world.World;
/**
* A simple way of managing all machines -- MachineryManager! Contains an ArrayList of

View file

@ -2,36 +2,30 @@ package mekanism.common;
import ic2.api.Ic2Recipes;
import java.io.*;
import java.net.HttpURLConnection;
import java.net.InetAddress;
import java.net.Socket;
import java.net.URL;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.Properties;
import java.util.Random;
import java.util.logging.Logger;
import universalelectricity.prefab.multiblock.*;
import mekanism.api.Infusion;
import mekanism.api.InfusionType;
import mekanism.api.ItemMachineUpgrade;
import mekanism.api.Tier.EnergyCubeTier;
import mekanism.client.SoundHandler;
import net.minecraftforge.common.*;
import net.minecraftforge.event.ForgeSubscribe;
import net.minecraftforge.event.entity.living.LivingSpecialSpawnEvent;
import net.minecraft.block.Block;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.item.crafting.CraftingManager;
import net.minecraft.item.crafting.FurnaceRecipes;
import net.minecraftforge.common.Configuration;
import net.minecraftforge.common.MinecraftForge;
import net.minecraftforge.oredict.OreDictionary;
import net.minecraftforge.oredict.ShapedOreRecipe;
import net.minecraftforge.oredict.ShapelessOreRecipe;
import net.minecraft.src.*;
import cpw.mods.fml.client.registry.RenderingRegistry;
import cpw.mods.fml.common.*;
import universalelectricity.prefab.multiblock.BlockMulti;
import universalelectricity.prefab.multiblock.TileEntityMulti;
import cpw.mods.fml.common.Mod;
import cpw.mods.fml.common.Mod.Init;
import cpw.mods.fml.common.Mod.Instance;
import cpw.mods.fml.common.Mod.PostInit;
import cpw.mods.fml.common.Mod.PreInit;
import cpw.mods.fml.common.asm.SideOnly;
import cpw.mods.fml.common.SidedProxy;
import cpw.mods.fml.common.event.FMLInitializationEvent;
import cpw.mods.fml.common.event.FMLPostInitializationEvent;
import cpw.mods.fml.common.event.FMLPreInitializationEvent;
@ -40,7 +34,8 @@ import cpw.mods.fml.common.network.NetworkRegistry;
import cpw.mods.fml.common.registry.EntityRegistry;
import cpw.mods.fml.common.registry.GameRegistry;
import cpw.mods.fml.common.registry.LanguageRegistry;
import cpw.mods.fml.common.registry.TickRegistry;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
/**
* Mekanism mod -- adds in Tools, Armor, Weapons, Machines, and Magic. Universal source.
@ -118,6 +113,7 @@ public class Mekanism
public static ItemStorageTank StorageTank;
public static Item ControlCircuit;
public static Item EnrichedIron;
public static Item CompressedCarbon;
//Extra Blocks
public static Block BasicBlock;
@ -186,6 +182,9 @@ public class Mekanism
CraftingManager.getInstance().getRecipeList().add(new ShapedOreRecipe(new ItemStack(Ingot, 9, 2), new Object[] {
"*", Character.valueOf('*'), new ItemStack(BasicBlock, 1, 1)
}));
CraftingManager.getInstance().getRecipeList().add(new ShapedOreRecipe(new ItemStack(BasicBlock, 1, 5), new Object[] {
"***", "***", "***", Character.valueOf('*'), "ingotRefinedSteel"
}));
//Extra
CraftingManager.getInstance().getRecipeList().add(new ShapedOreRecipe(new ItemStack(ObsidianTNT, 1), new Object[] {
@ -227,9 +226,6 @@ public class Mekanism
CraftingManager.getInstance().getRecipeList().add(new ShapedOreRecipe(new ItemStack(EnrichedAlloy), new Object[] {
" R ", "RIR", " R ", Character.valueOf('R'), Item.redstone, Character.valueOf('I'), Item.ingotIron
}));
CraftingManager.getInstance().getRecipeList().add(new ShapedOreRecipe(new ItemStack(BasicBlock, 1, 5), new Object[] {
"PAP", "AEA", "PAP", Character.valueOf('P'), "ingotPlatinum", Character.valueOf('A'), EnrichedAlloy, Character.valueOf('E'), EnrichedIron
}));
CraftingManager.getInstance().getRecipeList().add(new ShapedOreRecipe(StorageTank.getEmptyItem(), new Object[] {
"III", "IDI", "III", Character.valueOf('I'), Item.ingotIron, Character.valueOf('D'), "dustIron"
}));
@ -280,6 +276,7 @@ public class Mekanism
FurnaceRecipes.smelting().addSmelting(Dust.shiftedIndex, 2, new ItemStack(Ingot, 1, 1), 1.0F);
FurnaceRecipes.smelting().addSmelting(Dust.shiftedIndex, 0, new ItemStack(Item.ingotIron), 1.0F);
FurnaceRecipes.smelting().addSmelting(Dust.shiftedIndex, 1, new ItemStack(Item.ingotGold), 1.0F);
FurnaceRecipes.smelting().addSmelting(Dust.shiftedIndex, 5, new ItemStack(Ingot, 1, 4), 1.0F);
//Enrichment Chamber Recipes
RecipeHandler.addEnrichmentChamberRecipe(new ItemStack(Dust, 1, 4), new ItemStack(Item.diamond));
@ -288,6 +285,7 @@ public class Mekanism
RecipeHandler.addEnrichmentChamberRecipe(new ItemStack(Block.oreIron), new ItemStack(Dust, 2, 0));
RecipeHandler.addEnrichmentChamberRecipe(new ItemStack(Block.oreGold), new ItemStack(Dust, 2, 1));
RecipeHandler.addEnrichmentChamberRecipe(new ItemStack(EnrichedIron, 2), new ItemStack(Dust, 1, 2));
RecipeHandler.addEnrichmentChamberRecipe(new ItemStack(Item.coal, 4), new ItemStack(CompressedCarbon));
//Platinum Compressor Recipes
RecipeHandler.addPlatinumCompressorRecipe(new ItemStack(Item.redstone), new ItemStack(Ingot, 1, 2));
@ -306,6 +304,9 @@ public class Mekanism
//Theoretical Elementizer Recipes
RecipeHandler.addTheoreticalElementizerRecipe(new ItemStack(EnrichedAlloy), new ItemStack(TileEntityTheoreticalElementizer.getRandomMagicItem()));
//Metallurgic Infuser Recipes
RecipeHandler.addMetallurgicInfuserRecipe(Infusion.getInfusion(InfusionType.COAL, new ItemStack(EnrichedIron)), new ItemStack(Dust, 1, 5));
}
/**
@ -338,6 +339,7 @@ public class Mekanism
LanguageRegistry.addName(StorageTank, "Storage Tank");
LanguageRegistry.addName(ControlCircuit, "Control Circuit");
LanguageRegistry.addName(EnrichedIron, "Enriched Iron");
LanguageRegistry.addName(CompressedCarbon, "Compressed Carbon");
//Localization for MultiBlock
LanguageRegistry.instance().addStringLocalization("tile.BasicBlock.PlatinumBlock.name", "Platinum Block");
@ -345,7 +347,7 @@ public class Mekanism
LanguageRegistry.instance().addStringLocalization("tile.BasicBlock.RefinedObsidian.name", "Refined Obsidian");
LanguageRegistry.instance().addStringLocalization("tile.BasicBlock.CoalBlock.name", "Coal Block");
LanguageRegistry.instance().addStringLocalization("tile.BasicBlock.RefinedGlowstone.name", "Refined Glowstone");
LanguageRegistry.instance().addStringLocalization("tile.BasicBlock.ReinforcedIron.name", "Reinforced Iron");
LanguageRegistry.instance().addStringLocalization("tile.BasicBlock.SteelBlock.name", "Steel Block");
LanguageRegistry.instance().addStringLocalization("tile.BasicBlock.ControlPanel.name", "Control Panel");
//Localization for MachineBlock
@ -357,6 +359,7 @@ public class Mekanism
LanguageRegistry.instance().addStringLocalization("tile.MachineBlock.BasicSmeltingFactory.name", "Basic Smelting Factory");
LanguageRegistry.instance().addStringLocalization("tile.MachineBlock.AdvancedSmeltingFactory.name", "Advanced Smelting Factory");
LanguageRegistry.instance().addStringLocalization("tile.MachineBlock.UltimateSmeltingFactory.name", "Ultimate Smelting Factory");
LanguageRegistry.instance().addStringLocalization("tile.MachineBlock.MetallurgicInfuser.name", "Metallurgic Infuser");
//Localization for OreBlock
LanguageRegistry.instance().addStringLocalization("tile.OreBlock.PlatinumOre.name", "Platinum Ore");
@ -372,12 +375,14 @@ public class Mekanism
LanguageRegistry.instance().addStringLocalization("item.platinumDust.name", "Platinum Dust");
LanguageRegistry.instance().addStringLocalization("item.obsidianDust.name", "Obsidian Dust");
LanguageRegistry.instance().addStringLocalization("item.diamondDust.name", "Diamond Dust");
LanguageRegistry.instance().addStringLocalization("item.refinedsteelDust.name", "Refined Steel Dust");
//Localization for Ingot
LanguageRegistry.instance().addStringLocalization("item.obsidianIngot.name", "Obsidian Ingot");
LanguageRegistry.instance().addStringLocalization("item.platinumIngot.name", "Platinum Ingot");
LanguageRegistry.instance().addStringLocalization("item.redstoneIngot.name", "Redstone Ingot");
LanguageRegistry.instance().addStringLocalization("item.glowstoneIngot.name", "Glowstone Ingot");
LanguageRegistry.instance().addStringLocalization("item.refinedsteelIngot.name", "Refined Steel Ingot");
//Localization for Mekanism creative tab
LanguageRegistry.instance().addStringLocalization("itemGroup.tabMekanism", "Mekanism");
@ -406,6 +411,7 @@ public class Mekanism
StorageTank.setIconIndex(255);
ControlCircuit.setIconIndex(223);
EnrichedIron.setIconIndex(222);
CompressedCarbon.setIconIndex(221);
}
/**
@ -432,6 +438,7 @@ public class Mekanism
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");
}
/**
@ -471,11 +478,13 @@ public class Mekanism
OreDictionary.registerOre("dustPlatinum", new ItemStack(Dust, 1, 2));
OreDictionary.registerOre("dustObsidian", new ItemStack(Dust, 1, 3));
OreDictionary.registerOre("dustDiamond", new ItemStack(Dust, 1, 4));
OreDictionary.registerOre("dustRefinedSteel", new ItemStack(Dust, 1, 5));
OreDictionary.registerOre("ingotObsidian", new ItemStack(Ingot, 1, 0));
OreDictionary.registerOre("ingotPlatinum", new ItemStack(Ingot, 1, 1));
OreDictionary.registerOre("ingotRedstone", new ItemStack(Ingot, 1, 2));
OreDictionary.registerOre("ingotGlowstone", new ItemStack(Ingot, 1, 3));
OreDictionary.registerOre("ingotRefinedSteel", new ItemStack(Ingot, 1, 4));
OreDictionary.registerOre("orePlatinum", new ItemStack(OreBlock, 1, 0));
@ -548,6 +557,11 @@ 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"))
{
@ -589,6 +603,13 @@ public class Mekanism
RecipeHandler.addCombinerRecipe(MekanismUtils.getStackWithSize(ore, 2), OreDictionary.getOres("oreCopper").get(0));
}
} catch(Exception e) {}
try {
for(ItemStack ore : OreDictionary.getOres("ingotCopper"))
{
RecipeHandler.addMetallurgicInfuserRecipe(Infusion.getInfusion(InfusionType.TIN, ore), OreDictionary.getOres("ingotBronze").get(0));
}
} catch(Exception e) {}
try {
for(ItemStack ore : OreDictionary.getOres("dustTin"))
@ -636,6 +657,7 @@ public class Mekanism
GameRegistry.registerTileEntity(TileEntitySmeltingFactory.class, "SmeltingFactory");
GameRegistry.registerTileEntity(TileEntityAdvancedSmeltingFactory.class, "AdvancedSmeltingFactory");
GameRegistry.registerTileEntity(TileEntityUltimateSmeltingFactory.class, "UltimateSmeltingFactory");
GameRegistry.registerTileEntity(TileEntityMetallurgicInfuser.class, "MetallurgicInfuser");
//Load tile entities that have special renderers.
proxy.registerSpecialTileEntities();

View file

@ -2,6 +2,8 @@ package mekanism.common;
import cpw.mods.fml.common.Loader;
import ic2.api.Ic2Recipes;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.src.*;
/**

View file

@ -1,27 +1,23 @@
package mekanism.common;
import java.io.BufferedReader;
import java.io.ByteArrayOutputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.HttpURLConnection;
import java.net.InetAddress;
import java.net.Socket;
import java.net.URISyntaxException;
import java.net.URL;
import cpw.mods.fml.common.network.PacketDispatcher;
import cpw.mods.fml.common.registry.LanguageRegistry;
import cpw.mods.fml.server.FMLServerHandler;
import mekanism.api.IActiveState;
import mekanism.api.IEnergyCube;
import mekanism.api.Tier.EnergyCubeTier;
import mekanism.client.ThreadSendData;
import net.minecraft.src.*;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.item.ItemStack;
import net.minecraft.item.crafting.CraftingManager;
import net.minecraft.network.packet.Packet3Chat;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.world.IBlockAccess;
import net.minecraft.world.World;
import net.minecraftforge.oredict.ShapedOreRecipe;
import cpw.mods.fml.server.FMLServerHandler;
/**
* Utilities used by Mekanism. All miscellaneous methods are located here.
@ -178,7 +174,7 @@ public final class MekanismUtils
public static void doFakeBlockExplosion(World world, int x, int y, int z)
{
world.spawnParticle("hugeexplosion", x, y, z, 0.0D, 0.0D, 0.0D);
world.playSound(x, y, z, "random.explode", 1.0F, 1.0F);
world.playSound(x, y, z, "random.explode", 1.0F, 1.0F, true);
}
/**

View file

@ -2,7 +2,10 @@ package mekanism.common;
import java.util.Random;
import net.minecraft.src.*;
import net.minecraft.item.ItemStack;
import net.minecraft.world.World;
import net.minecraft.world.chunk.IChunkProvider;
import net.minecraft.world.gen.feature.WorldGenMinable;
import cpw.mods.fml.common.IWorldGenerator;
public class OreHandler implements IWorldGenerator

View file

@ -1,28 +1,22 @@
package mekanism.common;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import mekanism.api.ITileNetwork;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.network.INetworkManager;
import net.minecraft.network.packet.Packet250CustomPayload;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.world.World;
import com.google.common.io.ByteArrayDataInput;
import com.google.common.io.ByteStreams;
import mekanism.api.EnumGas;
import mekanism.api.ITileNetwork;
import net.minecraft.src.EntityPlayer;
import net.minecraft.src.INetworkManager;
import net.minecraft.src.Packet;
import net.minecraft.src.Packet250CustomPayload;
import net.minecraft.src.TileEntity;
import net.minecraft.src.World;
import cpw.mods.fml.common.FMLCommonHandler;
import cpw.mods.fml.common.network.IPacketHandler;
import cpw.mods.fml.common.network.PacketDispatcher;
import cpw.mods.fml.common.network.Player;
import cpw.mods.fml.server.FMLServerHandler;
/**
* Mekanism packet handler. As always, use packets sparingly!

View file

@ -0,0 +1,127 @@
package mekanism.common;
import java.util.Map;
import mekanism.api.Infusion;
import net.minecraft.item.ItemStack;
/**
* Class used to handle machine recipes. This is used for both adding recipes and checking outputs.
* @author AidanBrady
*
*/
public final class RecipeHandler
{
/**
* Add an Enrichment Chamber recipe.
* @param input - input ItemStack
* @param output - output ItemStack
*/
public static void addEnrichmentChamberRecipe(ItemStack input, ItemStack output)
{
TileEntityEnrichmentChamber.recipes.put(input, output);
}
/**
* Add a Platinum Compressor recipe.
* @param input - input ItemStack
* @param output - output ItemStack
*/
public static void addPlatinumCompressorRecipe(ItemStack input, ItemStack output)
{
TileEntityPlatinumCompressor.recipes.put(input, output);
}
/**
* Add a Combiner recipe.
* @param input - input ItemStack
* @param output - output ItemStack
*/
public static void addCombinerRecipe(ItemStack input, ItemStack output)
{
TileEntityCombiner.recipes.put(input, output);
}
/**
* Add a Crusher recipe.
* @param input - input ItemStack
* @param output - output ItemStack
*/
public static void addCrusherRecipe(ItemStack input, ItemStack output)
{
TileEntityCrusher.recipes.put(input, output);
}
/**
* Add a Theoretical Elementizer recipe.
* @param input - input ItemStack
* @param output - output ItemStack
*/
public static void addTheoreticalElementizerRecipe(ItemStack input, ItemStack output)
{
TileEntityTheoreticalElementizer.recipes.put(input, output);
}
/**
* Adds a Metallurgic Infuser recipe.
* @param input - input Infusion
* @param output - output ItemStack
*/
public static void addMetallurgicInfuserRecipe(Infusion input, ItemStack output)
{
TileEntityMetallurgicInfuser.recipes.put(input, output);
}
/**
* Gets the output ItemStack of the Infusion in the parameters.
* @param infusion - input Infusion
* @param stackDecrease - whether or not to decrease the input slot's stack size AND the infuse amount
* @param recipes - Map of recipes
* @return output ItemStack
*/
public static ItemStack getOutput(Infusion infusion, boolean stackDecrease, Map<Infusion, ItemStack> recipes)
{
for(Map.Entry entry : recipes.entrySet())
{
if(((Infusion)entry.getKey()).resource.isItemEqual(infusion.resource) && infusion.resource.stackSize >= ((Infusion)entry.getKey()).resource.stackSize)
{
if(infusion.type == ((Infusion)entry.getKey()).type)
{
if(stackDecrease)
{
infusion.resource.stackSize -= ((Infusion)entry.getKey()).resource.stackSize;
}
return ((ItemStack)entry.getValue()).copy();
}
}
}
return null;
}
/**
* Gets the output ItemStack of the ItemStack in the parameters.
* @param itemstack - input ItemStack
* @param stackDecrease - whether or not to decrease the input slot's stack size
* @param recipes - Map of recipes
* @return output ItemStack
*/
public static ItemStack getOutput(ItemStack itemstack, boolean stackDecrease, Map<ItemStack, ItemStack> recipes)
{
for(Map.Entry entry : recipes.entrySet())
{
if(((ItemStack)entry.getKey()).isItemEqual(itemstack) && itemstack.stackSize >= ((ItemStack)entry.getKey()).stackSize)
{
if(stackDecrease)
{
itemstack.stackSize -= ((ItemStack)entry.getKey()).stackSize;
}
return ((ItemStack)entry.getValue()).copy();
}
}
return null;
}
}

View file

@ -1,6 +1,6 @@
package mekanism.common;
import net.minecraft.src.ServerCommandManager;
import net.minecraft.command.ServerCommandManager;
import cpw.mods.fml.common.FMLCommonHandler;
/**

View file

@ -1,8 +1,11 @@
package mekanism.common;
import universalelectricity.core.implement.IItemElectric;
import ic2.api.IElectricItem;
import net.minecraft.src.*;
import net.minecraft.inventory.IInventory;
import net.minecraft.inventory.Slot;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import universalelectricity.core.implement.IItemElectric;
public class SlotEnergy extends Slot
{

View file

@ -1,7 +1,9 @@
package mekanism.common;
import mekanism.api.ItemMachineUpgrade;
import net.minecraft.src.*;
import net.minecraft.inventory.IInventory;
import net.minecraft.inventory.Slot;
import net.minecraft.item.ItemStack;
public class SlotMachineUpgrade extends Slot
{

View file

@ -1,9 +1,10 @@
package mekanism.common;
import ic2.api.IElectricItem;
import mekanism.api.EnumGas;
import mekanism.api.IStorageTank;
import net.minecraft.src.*;
import net.minecraft.inventory.IInventory;
import net.minecraft.inventory.Slot;
import net.minecraft.item.ItemStack;
public class SlotStorageTank extends Slot
{

View file

@ -1,29 +1,20 @@
package mekanism.common;
import java.io.ByteArrayOutputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.util.List;
import ic2.api.ElectricItem;
import ic2.api.IElectricItem;
import mekanism.api.IMachineUpgrade;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.network.INetworkManager;
import net.minecraft.network.packet.Packet250CustomPayload;
import universalelectricity.core.implement.IItemElectric;
import buildcraft.api.power.IPowerProvider;
import buildcraft.api.power.PowerFramework;
import com.google.common.io.ByteArrayDataInput;
import dan200.computer.api.IComputerAccess;
import ic2.api.ElectricItem;
import ic2.api.EnergyNet;
import ic2.api.IElectricItem;
import ic2.api.IWrenchable;
import net.minecraft.src.*;
import net.minecraftforge.common.ForgeDirection;
import net.minecraftforge.common.ISidedInventory;
public abstract class TileEntityAdvancedElectricMachine extends TileEntityBasicMachine
{
/** How much secondary energy (fuel) this machine uses per tick. */

View file

@ -1,14 +1,12 @@
package mekanism.common;
import com.google.common.io.ByteArrayDataInput;
import universalelectricity.prefab.tile.TileEntityDisableable;
import ic2.api.EnergyNet;
import ic2.api.IWrenchable;
import ic2.api.energy.EnergyTileLoadEvent;
import ic2.api.energy.EnergyNet;
import mekanism.api.ITileNetwork;
import net.minecraft.src.*;
import net.minecraftforge.common.MinecraftForge;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import universalelectricity.prefab.tile.TileEntityDisableable;
public abstract class TileEntityBasicBlock extends TileEntityDisableable implements IWrenchable, ITileNetwork
{

View file

@ -1,43 +1,29 @@
package mekanism.common;
import ic2.api.Direction;
import ic2.api.energy.event.EnergyTileSinkEvent;
import ic2.api.energy.tile.IEnergySink;
import java.util.EnumSet;
import universalelectricity.core.electricity.ElectricInfo;
import mekanism.api.IActiveState;
import mekanism.api.IElectricMachine;
import mekanism.client.Sound;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.tileentity.TileEntity;
import net.minecraftforge.common.ForgeDirection;
import net.minecraftforge.common.MinecraftForge;
import universalelectricity.core.electricity.ElectricityConnections;
import universalelectricity.core.implement.IConductor;
import universalelectricity.core.implement.IJouleStorage;
import universalelectricity.core.implement.IVoltage;
import universalelectricity.core.vector.Vector3;
import buildcraft.api.power.IPowerProvider;
import buildcraft.api.power.IPowerReceptor;
import buildcraft.api.power.PowerFramework;
import com.google.common.io.ByteArrayDataInput;
import cpw.mods.fml.client.FMLClientHandler;
import cpw.mods.fml.common.Loader;
import cpw.mods.fml.common.Side;
import cpw.mods.fml.common.asm.SideOnly;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import dan200.computer.api.IComputerAccess;
import dan200.computer.api.IPeripheral;
import ic2.api.Direction;
import ic2.api.EnergyNet;
import ic2.api.IEnergySink;
import ic2.api.IWrenchable;
import ic2.api.energy.EnergyTileSinkEvent;
import mekanism.api.IActiveState;
import mekanism.api.IElectricMachine;
import mekanism.client.Sound;
import net.minecraft.src.*;
import net.minecraftforge.common.ForgeDirection;
import net.minecraftforge.common.ISidedInventory;
import net.minecraftforge.common.MinecraftForge;
public abstract class TileEntityBasicMachine extends TileEntityElectricBlock implements IElectricMachine, IEnergySink, IJouleStorage, IVoltage, IPeripheral, IActiveState
{
/** The Sound instance for this machine. */
@ -117,7 +103,7 @@ public abstract class TileEntityBasicMachine extends TileEntityElectricBlock imp
{
if(direction != ForgeDirection.getOrientation(facing))
{
TileEntity tileEntity = Vector3.getTileEntityFromSide(worldObj, Vector3.get(this), direction);
TileEntity tileEntity = Vector3.getTileEntityFromSide(worldObj, new Vector3(this), direction);
if(tileEntity != null)
{
if(tileEntity instanceof IConductor)

View file

@ -1,13 +1,15 @@
package mekanism.common;
import java.util.List;
import java.util.Vector;
import java.util.HashMap;
import java.util.Map;
import net.minecraft.src.*;
import net.minecraft.block.Block;
import net.minecraft.item.ItemBlock;
import net.minecraft.item.ItemStack;
public class TileEntityCombiner extends TileEntityAdvancedElectricMachine
{
public static List recipes = new Vector();
public static Map<ItemStack, ItemStack> recipes = new HashMap<ItemStack, ItemStack>();
public TileEntityCombiner()
{
@ -15,7 +17,7 @@ public class TileEntityCombiner extends TileEntityAdvancedElectricMachine
}
@Override
public List getRecipes()
public Map getRecipes()
{
return recipes;
}

View file

@ -1,7 +1,10 @@
package mekanism.common;
import buildcraft.api.power.PowerFramework;
import net.minecraft.src.*;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.inventory.IInventory;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.nbt.NBTTagList;
import net.minecraftforge.common.ForgeDirection;
import net.minecraftforge.common.ISidedInventory;

View file

@ -1,9 +1,13 @@
package mekanism.common;
import com.google.common.io.ByteArrayDataInput;
import mekanism.api.ITileNetwork;
import net.minecraft.src.*;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.network.INetworkManager;
import net.minecraft.network.packet.Packet250CustomPayload;
import net.minecraft.tileentity.TileEntity;
import com.google.common.io.ByteArrayDataInput;
public class TileEntityControlPanel extends TileEntity implements ITileNetwork
{

Some files were not shown because too many files have changed in this diff Show more