Start work on the Energized Induction Matrix. This is going to be fun!
This commit is contained in:
parent
a5507a88f2
commit
ce31b1e22c
10 changed files with 113 additions and 39 deletions
|
@ -124,7 +124,7 @@ public class ItemRenderingHandler implements IItemRenderer
|
|||
{
|
||||
EnergyCubeTier tier = ((IEnergyCube)item.getItem()).getEnergyCubeTier(item);
|
||||
IEnergizedItem energized = (IEnergizedItem)item.getItem();
|
||||
Minecraft.getMinecraft().renderEngine.bindTexture(MekanismUtils.getResource(ResourceType.RENDER, "EnergyCube" + tier.name + ".png"));
|
||||
Minecraft.getMinecraft().renderEngine.bindTexture(MekanismUtils.getResource(ResourceType.RENDER, "EnergyCube" + tier.getBaseTier().getName() + ".png"));
|
||||
|
||||
GL11.glRotatef(180F, 0.0F, 0.0F, 1.0F);
|
||||
GL11.glRotatef(270F, 0.0F, -1.0F, 0.0F);
|
||||
|
@ -142,7 +142,7 @@ public class ItemRenderingHandler implements IItemRenderer
|
|||
|
||||
MekanismRenderer.glowOn();
|
||||
|
||||
EnumColor c = tier.color;
|
||||
EnumColor c = tier.getBaseTier().getColor();
|
||||
|
||||
GL11.glPushMatrix();
|
||||
GL11.glScalef(0.4F, 0.4F, 0.4F);
|
||||
|
|
|
@ -33,7 +33,7 @@ public class RenderEnergyCube extends TileEntitySpecialRenderer
|
|||
GL11.glPushMatrix();
|
||||
GL11.glTranslatef((float)x + 0.5F, (float)y + 1.5F, (float)z + 0.5F);
|
||||
|
||||
bindTexture(MekanismUtils.getResource(ResourceType.RENDER, "EnergyCube" + tileEntity.tier.name + ".png"));
|
||||
bindTexture(MekanismUtils.getResource(ResourceType.RENDER, "EnergyCube" + tileEntity.tier.getBaseTier().getName() + ".png"));
|
||||
|
||||
switch(tileEntity.facing)
|
||||
{
|
||||
|
@ -65,7 +65,7 @@ public class RenderEnergyCube extends TileEntitySpecialRenderer
|
|||
MekanismRenderer.blendOn();
|
||||
MekanismRenderer.glowOn();
|
||||
|
||||
EnumColor c = tileEntity.tier.color;
|
||||
EnumColor c = tileEntity.tier.getBaseTier().getColor();
|
||||
|
||||
|
||||
GL11.glPushMatrix();
|
||||
|
|
|
@ -77,6 +77,8 @@ import mekanism.common.tile.TileEntityEnrichmentChamber;
|
|||
import mekanism.common.tile.TileEntityFactory;
|
||||
import mekanism.common.tile.TileEntityFluidicPlenisher;
|
||||
import mekanism.common.tile.TileEntityGasTank;
|
||||
import mekanism.common.tile.TileEntityInductionCell;
|
||||
import mekanism.common.tile.TileEntityInductionProvider;
|
||||
import mekanism.common.tile.TileEntityLaser;
|
||||
import mekanism.common.tile.TileEntityLaserAmplifier;
|
||||
import mekanism.common.tile.TileEntityLaserTractorBeam;
|
||||
|
@ -161,6 +163,8 @@ public class CommonProxy
|
|||
GameRegistry.registerTileEntity(TileEntityLaserTractorBeam.class, "LaserTractorBeam");
|
||||
GameRegistry.registerTileEntity(TileEntitySolarNeutronActivator.class, "SolarNeutronActivator");
|
||||
GameRegistry.registerTileEntity(TileEntityAmbientAccumulator.class, "AmbientAccumulator");
|
||||
GameRegistry.registerTileEntity(TileEntityInductionCell.class, "InductionCell");
|
||||
GameRegistry.registerTileEntity(TileEntityInductionProvider.class, "InductionProvider");
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -2,7 +2,6 @@ package mekanism.common;
|
|||
|
||||
import mekanism.api.EnumColor;
|
||||
import mekanism.common.multipart.TransmitterType;
|
||||
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
|
||||
/**
|
||||
|
@ -17,27 +16,34 @@ public final class Tier
|
|||
*/
|
||||
public static enum BaseTier
|
||||
{
|
||||
BASIC("Basic"),
|
||||
ADVANCED("Advanced"),
|
||||
ELITE("Elite"),
|
||||
ULTIMATE("Ultimate"),
|
||||
CREATIVE("Creative");
|
||||
BASIC("Basic", EnumColor.BRIGHT_GREEN),
|
||||
ADVANCED("Advanced", EnumColor.DARK_RED),
|
||||
ELITE("Elite", EnumColor.DARK_BLUE),
|
||||
ULTIMATE("Ultimate", EnumColor.PURPLE),
|
||||
CREATIVE("Creative", EnumColor.BLACK);
|
||||
|
||||
public String getName()
|
||||
{
|
||||
return name;
|
||||
}
|
||||
|
||||
public EnumColor getColor()
|
||||
{
|
||||
return color;
|
||||
}
|
||||
|
||||
public boolean isObtainable()
|
||||
{
|
||||
return this != CREATIVE;
|
||||
}
|
||||
|
||||
private String name;
|
||||
private EnumColor color;
|
||||
|
||||
private BaseTier(String s)
|
||||
private BaseTier(String s, EnumColor c)
|
||||
{
|
||||
name = s;
|
||||
color = c;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -48,22 +54,20 @@ public final class Tier
|
|||
*/
|
||||
public static enum EnergyCubeTier
|
||||
{
|
||||
BASIC("Basic", EnumColor.BRIGHT_GREEN, 2000000, 800),
|
||||
ADVANCED("Advanced", EnumColor.DARK_RED, 8000000, 3200),
|
||||
ELITE("Elite", EnumColor.DARK_BLUE, 32000000, 12800),
|
||||
ULTIMATE("Ultimate", EnumColor.PURPLE, 128000000, 51200),
|
||||
CREATIVE("Creative", EnumColor.BLACK, Integer.MAX_VALUE, Integer.MAX_VALUE);
|
||||
BASIC(2000000, 800),
|
||||
ADVANCED(8000000, 3200),
|
||||
ELITE(32000000, 12800),
|
||||
ULTIMATE(128000000, 51200),
|
||||
CREATIVE(Integer.MAX_VALUE, Integer.MAX_VALUE);
|
||||
|
||||
public double MAX_ELECTRICITY;
|
||||
public double OUTPUT;
|
||||
public String name;
|
||||
public EnumColor color;
|
||||
|
||||
public static EnergyCubeTier getFromName(String tierName)
|
||||
{
|
||||
for(EnergyCubeTier tier : values())
|
||||
{
|
||||
if(tierName.contains(tier.name))
|
||||
if(tierName.contains(tier.getBaseTier().getName()))
|
||||
{
|
||||
return tier;
|
||||
}
|
||||
|
@ -78,14 +82,52 @@ public final class Tier
|
|||
return BaseTier.values()[ordinal()];
|
||||
}
|
||||
|
||||
private EnergyCubeTier(String s, EnumColor c, double maxEnergy, double out)
|
||||
private EnergyCubeTier(double maxEnergy, double out)
|
||||
{
|
||||
name = s;
|
||||
color = c;
|
||||
MAX_ELECTRICITY = maxEnergy;
|
||||
OUTPUT = out;
|
||||
}
|
||||
}
|
||||
|
||||
public static enum InductionCellTier
|
||||
{
|
||||
BASIC(1E9D),
|
||||
ADVANCED(8E9D),
|
||||
ELITE(64E9D),
|
||||
ULTIMATE(512E9D);
|
||||
|
||||
public double MAX_ELECTRICITY;
|
||||
|
||||
public BaseTier getBaseTier()
|
||||
{
|
||||
return BaseTier.values()[ordinal()];
|
||||
}
|
||||
|
||||
private InductionCellTier(double maxEnergy)
|
||||
{
|
||||
MAX_ELECTRICITY = maxEnergy;
|
||||
}
|
||||
}
|
||||
|
||||
public static enum InductionProviderTier
|
||||
{
|
||||
BASIC(64000),
|
||||
ADVANCED(512000),
|
||||
ELITE(4096000),
|
||||
ULTIMATE(32768000);
|
||||
|
||||
public double OUTPUT;
|
||||
|
||||
public BaseTier getBaseTier()
|
||||
{
|
||||
return BaseTier.values()[ordinal()];
|
||||
}
|
||||
|
||||
private InductionProviderTier(double out)
|
||||
{
|
||||
OUTPUT = out;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* The tiers used by the Factory and their corresponding values.
|
||||
|
@ -94,19 +136,18 @@ public final class Tier
|
|||
*/
|
||||
public static enum FactoryTier
|
||||
{
|
||||
BASIC("Basic", 3, new ResourceLocation("mekanism", "gui/factory/GuiBasicFactory.png")),
|
||||
ADVANCED("Advanced", 5, new ResourceLocation("mekanism", "gui/factory/GuiAdvancedFactory.png")),
|
||||
ELITE("Elite", 7, new ResourceLocation("mekanism", "gui/factory/GuiEliteFactory.png"));
|
||||
BASIC(3, new ResourceLocation("mekanism", "gui/factory/GuiBasicFactory.png")),
|
||||
ADVANCED(5, new ResourceLocation("mekanism", "gui/factory/GuiAdvancedFactory.png")),
|
||||
ELITE(7, new ResourceLocation("mekanism", "gui/factory/GuiEliteFactory.png"));
|
||||
|
||||
public int processes;
|
||||
public ResourceLocation guiLocation;
|
||||
public String name;
|
||||
|
||||
public static FactoryTier getFromName(String tierName)
|
||||
{
|
||||
for(FactoryTier tier : values())
|
||||
{
|
||||
if(tierName.contains(tier.name))
|
||||
if(tierName.contains(tier.getBaseTier().getName()))
|
||||
{
|
||||
return tier;
|
||||
}
|
||||
|
@ -121,9 +162,8 @@ public final class Tier
|
|||
return BaseTier.values()[ordinal()];
|
||||
}
|
||||
|
||||
private FactoryTier(String s, int process, ResourceLocation gui)
|
||||
private FactoryTier(int process, ResourceLocation gui)
|
||||
{
|
||||
name = s;
|
||||
processes = process;
|
||||
guiLocation = gui;
|
||||
}
|
||||
|
|
|
@ -1,8 +1,6 @@
|
|||
package mekanism.common.content.matrix;
|
||||
|
||||
import mekanism.common.content.tank.SynchronizedTankData;
|
||||
import mekanism.common.multiblock.SynchronizedData;
|
||||
|
||||
import net.minecraft.item.ItemStack;
|
||||
|
||||
public class SynchronizedMatrixData extends SynchronizedData<SynchronizedMatrixData>
|
||||
|
@ -16,6 +14,4 @@ public class SynchronizedMatrixData extends SynchronizedData<SynchronizedMatrixD
|
|||
public int capacitors;
|
||||
|
||||
public int outputters;
|
||||
|
||||
public int coolants;
|
||||
}
|
|
@ -83,7 +83,7 @@ public class ItemBlockEnergyCube extends ItemBlock implements IEnergizedItem, IE
|
|||
@Override
|
||||
public String getUnlocalizedName(ItemStack itemstack)
|
||||
{
|
||||
return getUnlocalizedName() + "." + getEnergyCubeTier(itemstack).name;
|
||||
return getUnlocalizedName() + "." + getEnergyCubeTier(itemstack).getBaseTier().getName();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -132,7 +132,7 @@ public class ItemBlockEnergyCube extends ItemBlock implements IEnergizedItem, IE
|
|||
itemstack.setTagCompound(new NBTTagCompound());
|
||||
}
|
||||
|
||||
itemstack.stackTagCompound.setString("tier", tier.name);
|
||||
itemstack.stackTagCompound.setString("tier", tier.getBaseTier().getName());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -82,7 +82,7 @@ public class TileEntityEnergyCube extends TileEntityElectricBlock implements IPe
|
|||
@Override
|
||||
public String getInventoryName()
|
||||
{
|
||||
return MekanismUtils.localize(getBlockType().getUnlocalizedName() + "." + tier.name + ".name");
|
||||
return MekanismUtils.localize(getBlockType().getUnlocalizedName() + "." + tier.getBaseTier().getName() + ".name");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -219,7 +219,7 @@ public class TileEntityEnergyCube extends TileEntityElectricBlock implements IPe
|
|||
@Override
|
||||
public ArrayList getNetworkedData(ArrayList data)
|
||||
{
|
||||
data.add(tier.name);
|
||||
data.add(tier.getBaseTier().getName());
|
||||
|
||||
super.getNetworkedData(data);
|
||||
|
||||
|
@ -242,7 +242,7 @@ public class TileEntityEnergyCube extends TileEntityElectricBlock implements IPe
|
|||
{
|
||||
super.writeToNBT(nbtTags);
|
||||
|
||||
nbtTags.setString("tier", tier.name);
|
||||
nbtTags.setString("tier", tier.getBaseTier().getName());
|
||||
nbtTags.setInteger("controlType", controlType.ordinal());
|
||||
}
|
||||
|
||||
|
|
|
@ -129,7 +129,7 @@ public class TileEntityFactory extends TileEntityNoisyElectricBlock implements I
|
|||
|
||||
public TileEntityFactory(FactoryTier type, MachineType machine)
|
||||
{
|
||||
super("null", type.name + "Factory", machine.baseEnergy);
|
||||
super("null", type.getBaseTier().getName() + "Factory", machine.baseEnergy);
|
||||
|
||||
tier = type;
|
||||
inventory = new ItemStack[5+type.processes*2];
|
||||
|
|
|
@ -0,0 +1,17 @@
|
|||
package mekanism.common.tile;
|
||||
|
||||
import mekanism.common.Tier.InductionCellTier;
|
||||
|
||||
public class TileEntityInductionCell extends TileEntityBasicBlock
|
||||
{
|
||||
public InductionCellTier tier = InductionCellTier.BASIC;
|
||||
|
||||
@Override
|
||||
public void onUpdate() {}
|
||||
|
||||
@Override
|
||||
public boolean canUpdate()
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,17 @@
|
|||
package mekanism.common.tile;
|
||||
|
||||
import mekanism.common.Tier.InductionProviderTier;
|
||||
|
||||
public class TileEntityInductionProvider extends TileEntityBasicBlock
|
||||
{
|
||||
public InductionProviderTier tier = InductionProviderTier.BASIC;
|
||||
|
||||
@Override
|
||||
public void onUpdate() {}
|
||||
|
||||
@Override
|
||||
public boolean canUpdate()
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
Loading…
Reference in a new issue