Class World

All Implemented Interfaces:
Serializable

public class World extends GameWindow implements Serializable
Representa el mundo donde los RobotObject y otros GridObject existen.
See Also:
  • Constructor Details

    • World

      public World(Mundo mundo, String title, int rowCount, int columnCount)
  • Method Details

    • onCreate

      public void onCreate()
      Description copied from class: GameWindow
      Metodo ejecutado una vez, cuando es agregado dentro de un GameLoop.
      Specified by:
      onCreate in class GameWindow
    • onUpdate

      public void onUpdate()
      Description copied from class: GameWindow
      Metodo ejecutado periodicamente al comienzo de un ciclo Update.
      Specified by:
      onUpdate in class GameWindow
    • createNewObject

      public void createNewObject(GridObject gridObject)
      Metodo exlusivo para los hilos productores, manda una instruccion para agregar un GridObject a este mundo.
      Parameters:
      gridObject -
    • getAllRobotObjects

      public RobotObject[] getAllRobotObjects()
      Metodo exlusivo para los hilos productores, manda una instruccion para conseguir un arreglo de todos los robot que existen dentro de este mundo.
      Returns:
      Una lista de todos los RobotObject
    • getRowCount

      public int getRowCount()
      Retorna la cantidad de filas de este mundo.
      Returns:
      la cantidad de filas
    • getColumnCount

      public int getColumnCount()
      Retorna la cantidad de columnas de este mundo.
      Returns:
      la cantidad de columnas
    • getMundo

      public Mundo getMundo()
      Consigue el objeto stub Mundo
      Returns:
      el objeto stub Mundo.
    • addObject

      public void addObject(GameObject object)
      Description copied from class: GameWindow
      Metodo usado para agregar un nuevo objeto GameObject dentro de esta ventana.
      Overrides:
      addObject in class GameWindow
      Parameters:
      object - El objeto GameObject nuevo
    • removeObject

      public void removeObject(GameObject object)
      Description copied from class: GameWindow
      Metodo usado para remover el objeto GameObject de esta ventana.
      Overrides:
      removeObject in class GameWindow
      Parameters:
      object - El objeto GameObject a quitar
    • getObjectsInPosition

      public List<GridObject> getObjectsInPosition(int row, int column)
      Retorna una lista de los GridObject que se encuentran en la posicion especificada.
      Parameters:
      row - la fila a controlar
      column - la columna a controlar
      Returns:
      la lista de GridObject
    • columnToX

      public int columnToX(int column)
      Transforma un una columna a su equivalente posicion x, en pixeles
      Parameters:
      column - el numero de columna
      Returns:
      su posicion x en el mundo, en pixeles
    • rowToY

      public int rowToY(int row)
      Transforma un una fila a su equivalente posicion y, en pixeles
      Parameters:
      row - el numero de fila
      Returns:
      su posicion y en el mundo, en pixeles
    • getTileSize

      public int getTileSize()
      Retorna el tamanho en pixeles de cada cuadricula
      Returns:
      el tamanho en pixeles de cada cuadricula
    • getPaddingX

      public int getPaddingX()
      Retorna el margen que hay entre las grillas con los bordes horizontales de la ventana.
      Returns:
      el margen horizontal de las grillas
    • getPaddingY

      public int getPaddingY()
      Retorna el margen que hay entre las grillas con los bordes verticales de la ventana.
      Returns:
      el margen vertical de las grillas
    • isValidPosition

      public boolean isValidPosition(int row, int column)
      Retorna si la posicion pasada es una posicion valida, es decir, si la posicion se encuentra dentro del mundo.
      Parameters:
      row - La fila a controlar
      column - La fila a controlar
      Returns:
      Si la posicion es valida o no.
    • saveWorld

      public static void saveWorld(World world, String path) throws FileNotFoundException, IOException
      Metodo estatico que guarda el estado del mundo, y los objetos, dentro de un archivo.
      Parameters:
      world - el mundo a guardas
      path - el nombre del archivo donde guardar
      Throws:
      FileNotFoundException
      IOException
    • loadWorld

      public static World loadWorld(String path) throws FileNotFoundException, IOException, ClassNotFoundException
      Metodo estatico que carga y crea un nuevo mundo desde un archivo previamente guardado.
      Parameters:
      path - el nombre del archivo
      Returns:
      un objeto World con los Objetos
      Throws:
      FileNotFoundException
      IOException
      ClassNotFoundException