public class GateLogic extends java.lang.Object implements IGate, IWireEmitter, IRedstoneStatementContainer
| Modifier and Type | Class and Description |
|---|---|
class |
GateLogic.StatementPair |
| Modifier and Type | Field and Description |
|---|---|
boolean[] |
actionOn
Used at the client to display if an action is activated (or would be activated if its not null), or a trigger is
currently triggering.
|
java.util.List<StatementSlot> |
activeActions |
boolean[] |
connections
Used to determine if gate logic should go across several trigger/action pairs.
|
boolean |
isOn
Used on the client to determine if this gate should glow or not.
|
static int |
NET_ID_CHANGE |
static int |
NET_ID_RESOLVE |
PluggableGate |
pluggable
Deprecated.
|
int |
redstoneOutput |
int |
redstoneOutputSide |
GateLogic.StatementPair[] |
statements |
boolean[] |
triggerOn
Used at the client to display if an action is activated (or would be activated if its not null), or a trigger is
currently triggering.
|
GateVariant |
variant |
| Constructor and Description |
|---|
GateLogic(PluggableGate pluggable,
GateVariant variant) |
GateLogic(PluggableGate pluggable,
net.minecraft.nbt.NBTTagCompound nbt) |
GateLogic(PluggableGate pluggable,
PacketBufferBC buffer) |
| Modifier and Type | Method and Description |
|---|---|
void |
emitWire(net.minecraft.item.EnumDyeColor colour)
Emits the given wire colour this tick.
|
java.util.List<IStatementParameter> |
getActionParameters(int slot) |
java.util.List<IStatement> |
getActions() |
java.util.List<StatementSlot> |
getActiveActions() |
java.util.SortedSet<ActionWrapper> |
getAllValidActions() |
java.util.SortedSet<TriggerWrapper> |
getAllValidTriggers() |
net.minecraft.tileentity.TileEntity |
getNeighbourTile(net.minecraft.util.EnumFacing side) |
IPipeHolder |
getPipeHolder() |
int |
getRedstoneInput(net.minecraft.util.EnumFacing side)
Get the redstone input from a given side.
|
net.minecraft.util.EnumFacing |
getSide() |
net.minecraft.tileentity.TileEntity |
getTile() |
java.util.List<IStatementParameter> |
getTriggerParameters(int slot) |
java.util.List<IStatement> |
getTriggers() |
boolean |
isEmitting(net.minecraft.item.EnumDyeColor colour)
Checks to see if this wire emitter is currently emitting the given colour.
|
boolean |
isSplitInTwo() |
boolean |
isValidAction(IStatement statement) |
boolean |
isValidTrigger(IStatement statement) |
void |
onTick() |
void |
readPayload(int id,
PacketBufferBC buffer,
net.minecraftforge.fml.relauncher.Side side,
net.minecraftforge.fml.common.network.simpleimpl.MessageContext ctx) |
void |
resolveActions() |
void |
sendPayload(int id,
IPayloadWriter writer)
Helper method to send a custom payload to the other side via the pluggable.
|
void |
sendResolveData() |
void |
sendStatementUpdate(boolean isAction,
int slot) |
boolean |
setRedstoneOutput(net.minecraft.util.EnumFacing side,
int value)
Set the redstone input for a given side.
|
void |
writeCreationToBuf(PacketBufferBC buffer) |
net.minecraft.nbt.NBTTagCompound |
writeToNbt() |
public static final int NET_ID_RESOLVE
public static final int NET_ID_CHANGE
@Deprecated public final PluggableGate pluggable
public final GateVariant variant
public final GateLogic.StatementPair[] statements
public final java.util.List<StatementSlot> activeActions
public final boolean[] connections
public final boolean[] triggerOn
public final boolean[] actionOn
public int redstoneOutput
public int redstoneOutputSide
public boolean isOn
public GateLogic(PluggableGate pluggable, GateVariant variant)
public GateLogic(PluggableGate pluggable, net.minecraft.nbt.NBTTagCompound nbt)
public GateLogic(PluggableGate pluggable, PacketBufferBC buffer)
public net.minecraft.nbt.NBTTagCompound writeToNbt()
public void writeCreationToBuf(PacketBufferBC buffer)
public final void sendPayload(int id,
IPayloadWriter writer)
public void readPayload(int id,
PacketBufferBC buffer,
net.minecraftforge.fml.relauncher.Side side,
net.minecraftforge.fml.common.network.simpleimpl.MessageContext ctx)
throws java.io.IOException
java.io.IOExceptionpublic void sendStatementUpdate(boolean isAction,
int slot)
public void sendResolveData()
public net.minecraft.util.EnumFacing getSide()
getSide in interface ISidedStatementContainerpublic net.minecraft.tileentity.TileEntity getTile()
getTile in interface IStatementContainerpublic net.minecraft.tileentity.TileEntity getNeighbourTile(net.minecraft.util.EnumFacing side)
getNeighbourTile in interface IStatementContainerpublic IPipeHolder getPipeHolder()
getPipeHolder in interface IGatepublic java.util.List<IStatement> getTriggers()
getTriggers in interface IGatepublic java.util.List<IStatement> getActions()
getActions in interface IGatepublic java.util.List<StatementSlot> getActiveActions()
getActiveActions in interface IGatepublic java.util.List<IStatementParameter> getTriggerParameters(int slot)
getTriggerParameters in interface IGatepublic java.util.List<IStatementParameter> getActionParameters(int slot)
getActionParameters in interface IGatepublic int getRedstoneInput(net.minecraft.util.EnumFacing side)
IRedstoneStatementContainergetRedstoneInput in interface IRedstoneStatementContainerside - The side - use "null" for maximum input.public boolean setRedstoneOutput(net.minecraft.util.EnumFacing side,
int value)
IRedstoneStatementContainersetRedstoneOutput in interface IRedstoneStatementContainerside - The side - use "null" for all sides.public boolean isEmitting(net.minecraft.item.EnumDyeColor colour)
IWireEmitterisEmitting in interface IWireEmitterpublic void emitWire(net.minecraft.item.EnumDyeColor colour)
IWireEmitteremitWire in interface IWireEmitterpublic boolean isSplitInTwo()
connectionspublic void resolveActions()
public void onTick()
public java.util.SortedSet<TriggerWrapper> getAllValidTriggers()
public java.util.SortedSet<ActionWrapper> getAllValidActions()
public boolean isValidTrigger(IStatement statement)
public boolean isValidAction(IStatement statement)