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.
|
protected static IdAllocator |
ID_ALLOC |
boolean |
isOn
Used on the client to determine if this gate should glow or not.
|
static int |
NET_ID_CHANGE
Sent when a single statement changed.
|
static int |
NET_ID_DARK
Sent when
isOn is false. |
static int |
NET_ID_GLOWING
Sent when
isOn is true. |
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(PacketBufferBC buffer,
net.minecraftforge.fml.relauncher.Side side,
net.minecraftforge.fml.common.network.simpleimpl.MessageContext ctx) |
void |
resolveActions() |
void |
sendIsOn() |
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() |
protected static final IdAllocator ID_ALLOC
public static final int NET_ID_RESOLVE
public static final int NET_ID_CHANGE
public static final int NET_ID_GLOWING
isOn is true.public static final int NET_ID_DARK
isOn is false.@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 void readPayload(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 void sendIsOn()
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)