diff --git a/assets/Map.txt b/assets/Map.txt index 367d460..d62d734 100644 --- a/assets/Map.txt +++ b/assets/Map.txt @@ -1,17 +1,17 @@ ################################### -# # +#. .# # ##### ###### ###### ###### #### # -# ###### # +# . ###### . # # ##### ###### ###### ###### #### # # ##### ###### ###### #### # -# ###### # +# . ###### . # # ##### ###### ,0123, ###### #### # # ### ###### ###### ###### ## # -# # # P # # # +# # . # P # . # # # ##### ###### # ## # ###### #### # -# # ## # # +# # . ## . # # # ### ######## ## ######## ## # # ##### ####### ####### #### # # ##### ####### #### ####### #### # -# # +#. .# ################################### \ No newline at end of file diff --git a/assets/bigpoint.png b/assets/bigpoint.png new file mode 100644 index 0000000..ca1e125 Binary files /dev/null and b/assets/bigpoint.png differ diff --git a/bin/.gitignore b/bin/.gitignore index 277032d..d238e1a 100644 --- a/bin/.gitignore +++ b/bin/.gitignore @@ -7,3 +7,4 @@ /Picture.class /Player.class /Point.class +/BigPoint.class diff --git a/bin/Game.class b/bin/Game.class index 3e31477..abcce5c 100644 Binary files a/bin/Game.class and b/bin/Game.class differ diff --git a/bin/Map.class b/bin/Map.class index aad37fc..6541853 100644 Binary files a/bin/Map.class and b/bin/Map.class differ diff --git a/src/BigPoint.java b/src/BigPoint.java new file mode 100644 index 0000000..9585a7b --- /dev/null +++ b/src/BigPoint.java @@ -0,0 +1,24 @@ +// Diese Klasse stellt die einzelnen Bicks (Wände) auf der Map dar. + +public class BigPoint extends Picture { // Die übergeordnete Klasse ist Picture + + + + private static final long serialVersionUID = -1204077187616807301L; + + + public int xPos; // Position auf dem Frame in x-Richtung + public int yPos; // Position auf dem Frame in y-Richtung + + public BigPoint(int newXPos, int newYPos) { // Erstellen des Konstruktors mit den Koordinaten, an denen sich der Brick + // beefinden soll. + + super("bigpoint"); // Aufrufen der übergeordneten Klasse + + // Setzen der Positionen: + xPos = newXPos; + yPos = newYPos; + + } + +} diff --git a/src/Game.java b/src/Game.java index fdfdbaa..707ce52 100644 --- a/src/Game.java +++ b/src/Game.java @@ -120,6 +120,15 @@ public class Game { } } } + for (int i = 0; i < 35; i++) { // für jeden Brick // points + for (int j = 0; j < 35; j++) { // für jeden Brick + if (Map.bigpoints[j][i] != null) { // Damit kein Fehler auftritt wegen nicht vorhandenen Bricks + panel.add(Map.bigpoints[j][i]); // Der jeweilige Brick wird zum panel hinzugefügt + Map.bigpoints[j][i].setBounds(Map.bigpoints[j][i].xPos, Map.bigpoints[j][i].yPos, 20, 20); // Rendern des + + } + } + } frame.setVisible(true); lastT = System.nanoTime(); // delta time diff --git a/src/Map.java b/src/Map.java index 9a56721..7494855 100644 --- a/src/Map.java +++ b/src/Map.java @@ -8,6 +8,7 @@ public class Map { public static Brick bricks[][] = new Brick[35][35]; // Zweidimensionales Array für alle Bricks public static Point points[][] = new Point[35][35]; + public static BigPoint bigpoints[][] = new BigPoint[35][35]; // Zweidimensionale Arrays siehe // https://de.wikipedia.org/wiki/Feld_(Datentyp)#Mehrdimensional_/_in-sich-mehrdimensional @@ -73,6 +74,9 @@ public class Map { } else if (line.charAt(j) == ' ') { points[i][j] = new Point(10 + 20 * j, 10 + 20 * i); maxScore++; + } else if (line.charAt(j) == '.') { + bigpoints[i][j] = new BigPoint(10 + 20 * j, 10 + 20 * i); + } } catch (Exception e) {