java.lang.Object
me.desht.pneumaticcraft.common.hacking.secstation.HackSimulation

public class HackSimulation extends Object
  • Field Details

  • Constructor Details

    • HackSimulation

      public HackSimulation(ISimulationController controller, int startPosition, float baseBridgeSpeed, ISimulationController.HackingSide side)
      Create a new simulation object
      Parameters:
      controller - the simulation controller
      startPosition - where the player or AI starts in this simulation
      baseBridgeSpeed - base speed for hacking between nodes
      side - is this simulation AI controlled?
  • Method Details

    • dummySimulation

      public static HackSimulation dummySimulation()
    • readFromNetwork

      public static HackSimulation readFromNetwork(net.minecraft.network.FriendlyByteBuf buffer)
    • writeToNetwork

      public void writeToNetwork(net.minecraft.network.FriendlyByteBuf buffer)
    • addNode

      public void addNode(int position, NetworkComponentItem.NetworkComponentType type, int count)
    • addNode

      public void addNode(int slot, net.minecraft.world.item.ItemStack stack)
    • getNodeAt

      public HackSimulation.Node getNodeAt(int pos)
    • isHackComplete

      public boolean isHackComplete()
    • isNukeVirusReady

      public boolean isNukeVirusReady()
    • getSide

    • tick

      public void tick()
    • activateNukeVirus

      public void activateNukeVirus(int pos)
    • getNeighbours

      public List<Integer> 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

      public void syncFromServer(List<HackSimulation.ConnectionEntry> newConns)
    • updateFortification

      public void updateFortification(List<org.apache.commons.lang3.tuple.Pair<Integer,Integer>> fortification)
    • getRemainingTraceTime

      public long getRemainingTraceTime()
    • getHackedNeighbour

      public int getHackedNeighbour(int nodePos)
    • isStarted

      public boolean isStarted()
    • isStopWormed

      public boolean isStopWormed()