Class HackSimulation
java.lang.Object
me.desht.pneumaticcraft.common.hacking.secstation.HackSimulation
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classclass -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intstatic final intstatic final intstatic final int -
Constructor Summary
ConstructorsConstructorDescriptionHackSimulation(ISimulationController controller, int startPosition, float baseBridgeSpeed, ISimulationController.HackingSide side) Create a new simulation object -
Method Summary
Modifier and TypeMethodDescriptionvoidactivateNukeVirus(int pos) voidaddNode(int position, NetworkComponentItem.NetworkComponentType type, int count) voidaddNode(int slot, net.minecraft.world.item.ItemStack stack) voidapplyStopWorm(int duration) static HackSimulationvoidfortify(int pos) Fortify a player-hacked node, making it harder for the AI to hack.intgetHackedNeighbour(int nodePos) it.unimi.dsi.fastutil.ints.IntListgetNeighbours(int node) getNodeAt(int pos) longgetSide()booleaninitiateNukeVirus(int pos) booleanisAwake()booleanbooleanbooleanbooleanstatic HackSimulationreadFromNetwork(net.minecraft.network.FriendlyByteBuf buffer) voidvoidstartHack(int targetPos) voidsyncFromServer(List<HackSimulation.ConnectionEntry> newConns) voidtick()voidupdateFortification(List<org.apache.commons.lang3.tuple.Pair<Integer, Integer>> fortification) voidwakeUp()voidwriteToNetwork(net.minecraft.network.FriendlyByteBuf buffer)
-
Field Details
-
GRID_WIDTH
public static final int GRID_WIDTH- See Also:
-
GRID_HEIGHT
public static final int GRID_HEIGHT- See Also:
-
GRID_SIZE
public static final int GRID_SIZE- See Also:
-
NODE_FORTIFICATION_TIME
public static final int NODE_FORTIFICATION_TIME- See Also:
-
allConnections
-
-
Constructor Details
-
HackSimulation
public HackSimulation(ISimulationController controller, int startPosition, float baseBridgeSpeed, ISimulationController.HackingSide side) Create a new simulation object- Parameters:
controller- the simulation controllerstartPosition- where the player or AI starts in this simulationbaseBridgeSpeed- base speed for hacking between nodesside- is this simulation AI controlled?
-
-
Method Details
-
dummySimulation
-
readFromNetwork
-
writeToNetwork
public void writeToNetwork(net.minecraft.network.FriendlyByteBuf buffer) -
addNode
-
addNode
public void addNode(int slot, net.minecraft.world.item.ItemStack stack) -
getNodeAt
-
isHackComplete
public boolean isHackComplete() -
isNukeVirusReady
public boolean isNukeVirusReady() -
getSide
-
tick
public void tick() -
activateNukeVirus
public void activateNukeVirus(int pos) -
getNeighbours
public it.unimi.dsi.fastutil.ints.IntList getNeighbours(int node) -
startHack
public void startHack(int targetPos) -
initiateNukeVirus
public boolean initiateNukeVirus(int pos) -
applyStopWorm
public void applyStopWorm(int duration) -
fortify
public void fortify(int pos) Fortify a player-hacked node, making it harder for the AI to hack.- Parameters:
pos- the node position
-
wakeUp
public void wakeUp() -
isAwake
public boolean isAwake() -
setHackComplete
public void setHackComplete() -
syncFromServer
-
updateFortification
-
getRemainingTraceTime
public long getRemainingTraceTime() -
getHackedNeighbour
public int getHackedNeighbour(int nodePos) -
isStarted
public boolean isStarted() -
isStopWormed
public boolean isStopWormed()
-