Auf Thema antworten

Ja genau! ich habe ein 14x8 Tiles, die zusammen die Spielfläche ergeben.


[code=Java]

package pp2013.gruppe12.shared;


import java.awt.Point;

import java.io.Serializable;


public class Map implements Serializable{

   

    private Tile [][] map;

    public static final int HEIGHT=8;

    public static final int WIDTH=14;

    public static final int HOUSE1=2;//x coordinate of the first house

    public static final int HOUSE2=5;

    public static final int HOUSE3=8;

    public static final int HOUSE4=11;

   

    /**

     * This method creates a new Tile Map and

     * sets the tildID first am EMPTY and then the houses in the right places

     */

    public Map(){

        map = new Tile [HEIGHT][WIDTH];

        for(int i=0; i<WIDTH; i++){

            for (int j=0; j<HEIGHT; j++){

                Tile tile= new Tile(Tile.EMPTY);

                tile.setCoordinates(i, j);

                setTile(i,j,tile);

            }

        }

        setHouses();

        setMyPosition();

        setInvaders();   

    }

   

    public Tile [][] getMap(){

        return map;

    }

   

    public Tile getTile(int x, int y){

        return map [y][x];

    }


    public void setTile(int x, int y, Tile tile){

        map[y][x]=tile;

    }


    public void setTile(int x, int y, int tileID){

        getTile(x,y).setTileID(tileID);

    }

   

   

    /**

     * This method sets the Houses in the right positions.

     */

    public void setHouses(){

       

        setTile(2,6,Tile.HOUSE);

        setTile(5,6,Tile.HOUSE);

        setTile(8,6,Tile.HOUSE);

        setTile(11,6,Tile.HOUSE);

       

    }


    public Point getTilePosition(int tileID){

        for(int i=0; i<WIDTH; i++){

            for (int j=0; j<HEIGHT; j++){

                if(getTile(i,j).getTileID()==tileID){

                    return new Point(i,j);

                }

            }

        }

        return null;   

    }


    public void setMyPosition(){

        setTile(0,7,2);   

    }


    public void setInvaders(){

        for(int i=2; i<12;i++){

            for(int j=1; j<5; j++){

                setTile(i,j,Tile.INVADERS);

            }

        }

    }


}

[/code]


[code=Java]

package pp2013.gruppe12.shared;


import java.awt.Point;

import java.io.Serializable;


public class Tile implements Serializable{

   

    private int x;

    private int y;

    private int tileID;

    public static final int EMPTY = 0;

    public static final int HOUSE = 1;

    public static final int MYPOSITION=2;

    public static final int INVADERS = 3;

    public static final int SHOT=4;

    public static final int EXPLOSION=5;

    public static final int BOMB=6;

    public static final int GAMEOVER=7;


    public Tile(int tileID){

        this.tileID=tileID;

    }

   

    public void setCoordinates(int x, int y){

        this.x=x;

        this.y=y;

    }

   

    public Point getCoordinates(){

        return new Point(x,y);

    }

   

    public int getTileID(){

        return tileID;

    }

   

    public void setTileID(int tileID){

        this.tileID=tileID;

    }

}

[/code]



Oben