//Es como un manager de tiles public void update() { //Si la iteracion no pasa el maximo se repite for (int y = 0; y < MAP_HEIGHT; y++) { //Si la iteracion no pasa el maximo se repite for (int x = 0; x < MAP_WIDTH; x++) { //se update los tiles a medida que cambie mMap[y][x].update(); } } int col = (int)(CMouse.getX() / TILE_WIDTH); int row = (int)(CMouse.getY() / TILE_HEIGHT); CTile tile = getTile(col, row); if (tile != null) { if (CMouse.firstPress()) { int index = tile.getTileIndex(); if (index == 0) { tile.setTileIndex(1); tile.setImage(mTiles[1]); } else if (index == 1) { tile.setTileIndex(0); tile.setImage(mTiles[0]); } } } }
// Carga el mapa en el array ya creado. No crea el array. public void loadLevel(int aLevel) { mCurrentLevel = aLevel; int[] m; if (aLevel == 1) { m = LEVEL_ANDY_001; } else { m = LEVEL_ANDY_002; } // Para cada fila.. for (int y = 0; y < mMapHeight; y++) { // Llenar la fila. for (int x = 0; x < mMapWidth; x++) { // Obtener que indice de tile es. 0, 1, .... int index = m [y * mMapWidth + x]; // Cambiar el tile. CTile tile = getTile(x, y); tile.setTileIndex(index); tile.setImage(mTiles[index]); } } loadEnemies(aLevel); }
// Carga el mapa en el array ya creado. No crea el array. public void loadLevel(int aLevel) { mCurrentLevel = aLevel; int[][] m; if (aLevel == 1) { m = LEVEL_001; } else { m = LEVEL_002; } // Para cada fila.. for (int y = 0; y < MAP_HEIGHT; y++) { // Llenar la fila. for (int x = 0; x < MAP_WIDTH; x++) { // Obtener que indice de tile es. 0, 1, .... int index = m [y] [x]; // Cambiar el tile. CTile tile = getTile(x, y); tile.setTileIndex(index); tile.setImage(mTiles[index]); // RUNNER //tile.setVelX(-100); } } loadItems(aLevel); }
//mMap es una lista de listas de elementos de CTiles public void loadLevel(int aLevel) { mCurrentLevel = aLevel; int[] m; m = LEVEL_001; //Mientras que y sea menor que el maximo de altura del mapa se agregan tiles. //Aca se crean las filas vacias. for (int y = 0; y < MAP_HEIGHT; y++) { //Se le agrega una fila, para eso es el add, se le agrega vacia. //Se van agregando de a 1 los tiles con arrays vacios. //mMap.Add(new List<CTile>()); //Mientras que la columna sea menor que el maximo se repite la iteracion. //Aca se llenan los arrays vacios de columnas con los tipos de tiles for (int x = 0; x < MAP_WIDTH; x++) { //Nos trae el indice de tiles (0, 1, 2...etc) int index = m[y * MAP_WIDTH + x]; //CTile tile = new CTile(x * TILE_WIDTH, y * TILE_HEIGHT, index, mTiles[index]); CTile tile = getTile(x, y); tile.setName("Tile - " + y + "," + x); //tile.setParentObject(mMapObject.transform); //Agrega el tile creado al array //mMap[y].Add(tile); tile.setTileIndex(index); tile.setImage(mTiles[index]); } } }
public void update() { for (int y = 0; y < MAP_HEIGHT; y++) { for (int x = 0; x < MAP_WIDTH; x++) { mMap [y] [x].update(); // RUNNER //mMap[y][x].setVelX(-400); } } int col = (int)(CMouse.getX() / TILE_WIDTH); int row = (int)(CMouse.getY() / TILE_HEIGHT); CTile tile = getTile(col, row); if (tile != null) { if (CMouse.firstPress()) { int index = tile.getTileIndex(); if (index == 0) { tile.setTileIndex(1); tile.setImage(mTiles[1]); } else if (index == 1) { tile.setTileIndex(0); tile.setImage(mTiles[0]); } } } }