Arrays auf Bewegung prüfen (2048)

dedrdoon

Neues Mitglied
Guten Tag zusammen. Für ein Projekt soll ich das Spiel 2048 programmieren. Ich bin ziemlich am Ende und das einzige was mir fehlt ist eine Liste mit Bewegungen. Dafür gibt es eine Klasse, die alte und neue Koordinaten und den Wert enthält. Anhand des Arrays vor der Bewegung und nach der Bewegung soll ich passierten Bewegungen

[ . . 8 . . ]---[ 8 4 16 . 2 ]
[ 8 2 . . 2 ]---[ 8 4 . . 4 ]
[ 4 . 8 . 4 ]---[ . . . . 2 ]
[ 4 2 . . . ]---[ . . . . . ]
[ . 4 . . 2 ]---[ . . . . . ]

Es geht hierbei nur um die Bewegung der Teile nach oben, da ich bereits Methoden habe die Koordinaten für andere Richtungen abändern.
Letztlich sollte für das Beispiel dann diese Bewegungen in einer Liste stehen.Erst alte Koordinaten mit Wert dann neue Koordinate mit Wert : (0/1):8 -> (0/0):8, (0/2):4 -> (0/1):4, (0/3):4 -> (0/1):8, (1/1):2 -> (1/0):2, (1/3):2 -> (1/0):4, (1/4):4 -> (1/1):4, (2/2):8 -> (2/0):16, (4/1):2 -> (4/0):2, (4/2):4 -> (4/1):4, (4/4):2 -> (4/2):2

Mein Ansatz sieht bisher so aus und ich komme einfach nicht weiter...

Java:
public ArrayList<Move> vergleichVorNach(int [][] vor,int [][] nach){
     
        ArrayList<Move> moves = new ArrayList<>();
        //Array durchgehen
        for (int i = 0 ; i < nach.length; i++) {
            for (int j = 0; j < nach[i].length - 1; j++) {
               //Bei einer änderung des Feldes             
                  if (nach[i][j]!=vor[i][j]&&nach[i][j]!=0) {
                  
                    //Prüfen ob nur verschoben oder vereinigt
                    //Dann:
                  Koordinate koordAlt= new Koordinate(i,j)
                  Koordinate koordNeu=new Koordinate(i,j+x)
                  Move move= new Move(koordAlt, neueKoordinate, AlterWert,NeuerWert);

Vielen Dank für Antworten und Hilfestellungen.
Liebe Grüße
 
Zuletzt bearbeitet von einem Moderator:
Ähnliche Java Themen
  Titel Forum Antworten Datum
A Probleme mit Darstellung von Umgebungen mittels mehrdimensionaler Arrays Spiele- und Multimedia-Programmierung 8
Kr0e GL3 - Vertex Arrays - VBOs Spiele- und Multimedia-Programmierung 5
R Nachträgliches ändern von Vertex Arrays. Wie geht das? Spiele- und Multimedia-Programmierung 3
YangLee Ausgabe von einer Bewegung bei mehrzeiligen Strings Spiele- und Multimedia-Programmierung 1
Furtano Vektoren für Bewegung für eine 2D-Simulation Spiele- und Multimedia-Programmierung 3
K Bewegung falsch Spiele- und Multimedia-Programmierung 6
J Spielprogrammierung mit bewegung und kollision Spiele- und Multimedia-Programmierung 24
B Webcam Bewegung markieren Spiele- und Multimedia-Programmierung 3
R Asteroid unschöne Bewegung Spiele- und Multimedia-Programmierung 13
G Bewegung eines Grafikobjektes Spiele- und Multimedia-Programmierung 7
F Probleme bei Bewegung Spiele- und Multimedia-Programmierung 7
T Flüssige Bewegung Spiele- und Multimedia-Programmierung 7
U Freie Bewegung Realisierung Spiele- und Multimedia-Programmierung 13
M Bomberman: Bewegung der Spielfigur in windows viel schneller Spiele- und Multimedia-Programmierung 12
F Brauche Hilfe bei Bewegung eines Rechtecks [Applet] Spiele- und Multimedia-Programmierung 5
F Bewegung/Kollision von Objekten auf Tastendruck Spiele- und Multimedia-Programmierung 6
L Prüfen, ob mp3-plugin vorhanden Spiele- und Multimedia-Programmierung 5
G Punkt in Image auf Transparenz prüfen Spiele- und Multimedia-Programmierung 6
G Prüfen ob Gegner getroffen wurde Spiele- und Multimedia-Programmierung 2
B Kugeln verschieben (Vektoren) und Schnitt prüfen Spiele- und Multimedia-Programmierung 12

Ähnliche Java Themen


Oben