Base code done, onto actual implementation
This commit is contained in:
parent
2fcbbcfa6a
commit
7bb6b2761b
5 changed files with 43 additions and 12 deletions
|
@ -131,6 +131,7 @@ public class RenderPartTransmitter implements IIconRegister
|
||||||
public void renderContents(PartLogisticalTransporter transporter, float partialTick, Vector3 vec)
|
public void renderContents(PartLogisticalTransporter transporter, float partialTick, Vector3 vec)
|
||||||
{
|
{
|
||||||
GL11.glPushMatrix();
|
GL11.glPushMatrix();
|
||||||
|
|
||||||
entityItem.age = 0;
|
entityItem.age = 0;
|
||||||
entityItem.hoverStart = 0;
|
entityItem.hoverStart = 0;
|
||||||
|
|
||||||
|
@ -203,6 +204,8 @@ public class RenderPartTransmitter implements IIconRegister
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
GL11.glPopMatrix();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void renderContents(PartUniversalCable cable, Vector3 pos)
|
public void renderContents(PartUniversalCable cable, Vector3 pos)
|
||||||
|
@ -472,6 +475,12 @@ public class RenderPartTransmitter implements IIconRegister
|
||||||
{
|
{
|
||||||
boolean connected = PartTransmitter.connectionMapContainsSide(transmitter.getAllCurrentConnections(), side);
|
boolean connected = PartTransmitter.connectionMapContainsSide(transmitter.getAllCurrentConnections(), side);
|
||||||
Icon renderIcon = transmitter.getIconForSide(side);
|
Icon renderIcon = transmitter.getIconForSide(side);
|
||||||
|
|
||||||
|
if(transmitter.getRenderColor() != null)
|
||||||
|
{
|
||||||
|
GL11.glColor4f(transmitter.getRenderColor().getColor(0), transmitter.getRenderColor().getColor(1), transmitter.getRenderColor().getColor(2), 1.0F);
|
||||||
|
}
|
||||||
|
|
||||||
renderPart(renderIcon, transmitter.getModelForSide(side, false), transmitter.x(), transmitter.y(), transmitter.z());
|
renderPart(renderIcon, transmitter.getModelForSide(side, false), transmitter.x(), transmitter.y(), transmitter.z());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -15,6 +15,7 @@ import net.minecraft.entity.player.EntityPlayer;
|
||||||
import net.minecraft.nbt.NBTTagCompound;
|
import net.minecraft.nbt.NBTTagCompound;
|
||||||
import net.minecraft.util.ChatMessageComponent;
|
import net.minecraft.util.ChatMessageComponent;
|
||||||
import net.minecraft.util.Icon;
|
import net.minecraft.util.Icon;
|
||||||
|
import net.minecraftforge.common.ForgeDirection;
|
||||||
|
|
||||||
public class PartDiversionTransporter extends PartLogisticalTransporter
|
public class PartDiversionTransporter extends PartLogisticalTransporter
|
||||||
{
|
{
|
||||||
|
@ -38,6 +39,15 @@ public class PartDiversionTransporter extends PartLogisticalTransporter
|
||||||
return transporterIcons.getCenterIcon(2);
|
return transporterIcons.getCenterIcon(2);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canConnect(ForgeDirection side)
|
||||||
|
{
|
||||||
|
testingSide = side;
|
||||||
|
boolean unblocked = tile().canReplacePart(this, this);
|
||||||
|
testingSide = null;
|
||||||
|
return unblocked;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void load(NBTTagCompound nbtTags)
|
public void load(NBTTagCompound nbtTags)
|
||||||
{
|
{
|
||||||
|
@ -98,7 +108,7 @@ public class PartDiversionTransporter extends PartLogisticalTransporter
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean onSneakRightClick(EntityPlayer player, int side)
|
protected boolean onConfigure(EntityPlayer player, int part, int side)
|
||||||
{
|
{
|
||||||
int newMode = (modes[side] + 1) % 3;
|
int newMode = (modes[side] + 1) % 3;
|
||||||
String description = "ERROR";
|
String description = "ERROR";
|
||||||
|
|
|
@ -28,7 +28,6 @@ import net.minecraft.item.ItemStack;
|
||||||
import net.minecraft.nbt.NBTTagCompound;
|
import net.minecraft.nbt.NBTTagCompound;
|
||||||
import net.minecraft.nbt.NBTTagList;
|
import net.minecraft.nbt.NBTTagList;
|
||||||
import net.minecraft.tileentity.TileEntity;
|
import net.minecraft.tileentity.TileEntity;
|
||||||
import net.minecraft.util.AxisAlignedBB;
|
|
||||||
import net.minecraft.util.ChatMessageComponent;
|
import net.minecraft.util.ChatMessageComponent;
|
||||||
import net.minecraft.util.Icon;
|
import net.minecraft.util.Icon;
|
||||||
import net.minecraftforge.common.ForgeDirection;
|
import net.minecraftforge.common.ForgeDirection;
|
||||||
|
@ -97,7 +96,7 @@ public class PartLogisticalTransporter extends PartSidedPipe implements ILogisti
|
||||||
@Override
|
@Override
|
||||||
public boolean isValidAcceptor(TileEntity tile, ForgeDirection side)
|
public boolean isValidAcceptor(TileEntity tile, ForgeDirection side)
|
||||||
{
|
{
|
||||||
return tile instanceof IInventory;
|
return TransporterUtils.getConnections(this)[side.ordinal()];
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -587,7 +586,7 @@ public class PartLogisticalTransporter extends PartSidedPipe implements ILogisti
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean onSneakRightClick(EntityPlayer player, int side)
|
protected boolean onConfigure(EntityPlayer player, int part, int side)
|
||||||
{
|
{
|
||||||
TransporterUtils.incrementColor(this);
|
TransporterUtils.incrementColor(this);
|
||||||
PacketHandler.sendPacket(Transmission.CLIENTS_RANGE, new PacketTileEntity().setParams(Coord4D.get(tile()), getNetworkedData(new ArrayList())), Coord4D.get(tile()), 50D);
|
PacketHandler.sendPacket(Transmission.CLIENTS_RANGE, new PacketTileEntity().setParams(Coord4D.get(tile()), getNetworkedData(new ArrayList())), Coord4D.get(tile()), 50D);
|
||||||
|
|
|
@ -8,6 +8,7 @@ import java.util.List;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
|
||||||
import mekanism.api.Coord4D;
|
import mekanism.api.Coord4D;
|
||||||
|
import mekanism.api.EnumColor;
|
||||||
import mekanism.api.transmitters.IBlockableConnection;
|
import mekanism.api.transmitters.IBlockableConnection;
|
||||||
import mekanism.api.transmitters.TransmissionType;
|
import mekanism.api.transmitters.TransmissionType;
|
||||||
import mekanism.client.render.RenderPartTransmitter;
|
import mekanism.client.render.RenderPartTransmitter;
|
||||||
|
@ -477,10 +478,21 @@ public abstract class PartSidedPipe extends TMultiPart implements TSlottedPart,
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
else {
|
||||||
|
return onConfigure(player, side, hit.subHit);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
protected boolean onConfigure(EntityPlayer player, int part, int side)
|
||||||
|
{
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public EnumColor getRenderColor()
|
||||||
|
{
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean onRightClick(EntityPlayer player, int side)
|
public boolean onRightClick(EntityPlayer player, int side)
|
||||||
{
|
{
|
||||||
|
|
|
@ -5,12 +5,12 @@ import mekanism.api.transmitters.TransmissionType;
|
||||||
|
|
||||||
public enum TransmitterType
|
public enum TransmitterType
|
||||||
{
|
{
|
||||||
UNIVERSAL_CABLE("UniversalCable", TransmissionType.ENERGY),
|
UNIVERSAL_CABLE("UniversalCable", Size.SMALL, TransmissionType.ENERGY),
|
||||||
MECHANICAL_PIPE("MechanicalPipe", TransmissionType.FLUID),
|
MECHANICAL_PIPE("MechanicalPipe", Size.LARGE, TransmissionType.FLUID),
|
||||||
PRESSURIZED_TUBE("PressurizedTube", TransmissionType.GAS),
|
PRESSURIZED_TUBE("PressurizedTube", Size.SMALL, TransmissionType.GAS),
|
||||||
LOGISTICAL_TRANSPORTER("LogisticalTransporter", TransmissionType.ITEM),
|
LOGISTICAL_TRANSPORTER("LogisticalTransporter", Size.LARGE, TransmissionType.ITEM),
|
||||||
RESTRICTIVE_TRANSPORTER("RestrictiveTransporter", TransmissionType.ITEM),
|
RESTRICTIVE_TRANSPORTER("RestrictiveTransporter", Size.LARGE, TransmissionType.ITEM),
|
||||||
DIVERSION_TRANSPORTER("DiversionTransporter", TransmissionType.ITEM);
|
DIVERSION_TRANSPORTER("DiversionTransporter", Size.LARGE, TransmissionType.ITEM);
|
||||||
|
|
||||||
private String unlocalizedName;
|
private String unlocalizedName;
|
||||||
private Size size;
|
private Size size;
|
||||||
|
@ -18,9 +18,10 @@ public enum TransmitterType
|
||||||
|
|
||||||
public static TransmitterType[] oldMetaArray = {PRESSURIZED_TUBE, UNIVERSAL_CABLE, MECHANICAL_PIPE, LOGISTICAL_TRANSPORTER, RESTRICTIVE_TRANSPORTER, DIVERSION_TRANSPORTER};
|
public static TransmitterType[] oldMetaArray = {PRESSURIZED_TUBE, UNIVERSAL_CABLE, MECHANICAL_PIPE, LOGISTICAL_TRANSPORTER, RESTRICTIVE_TRANSPORTER, DIVERSION_TRANSPORTER};
|
||||||
|
|
||||||
private TransmitterType(String name, TransmissionType type)
|
private TransmitterType(String name, Size s, TransmissionType type)
|
||||||
{
|
{
|
||||||
unlocalizedName = name;
|
unlocalizedName = name;
|
||||||
|
size = s;
|
||||||
transmissionType = type;
|
transmissionType = type;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue