Class SimulationCollision

java.lang.Object
dev.twilite.game.simulation.model.entity.SimulationCollision

public class SimulationCollision extends Object
Mutable occupancy tracker for simulated entity collision.
  • Constructor Details

    • SimulationCollision

      public SimulationCollision()
  • Method Details

    • from

      public static SimulationCollision from(Iterable<SimulationEntity> states)
      Creates a tracker containing the supplied entity states.
      Parameters:
      states - simulated entities to reserve
    • clip

      public void clip(SimulationEntity state)
      Reserves the occupied area for an entity state.
      Parameters:
      state - entity state to reserve
    • unclip

      public void unclip(SimulationEntity state)
      Removes the occupied area for an entity state.
      Parameters:
      state - entity state to remove
    • update

      public void update(SimulationEntity state)
      Updates the reserved occupied area for an entity.
      Parameters:
      state - entity state to update
    • blocked

      public boolean blocked(Rect area, int selfId)
      Returns whether an area intersects any tracked entity except selfId.
      Parameters:
      area - area to test
      selfId - entity id to ignore