Ausführen durch einen Tastendruck?

1 Antwort

Rufe nicht je Tastendruck move auf, sondern verändere nur die x-/y-Werte.

int xDirection, yDirection;

while (!view.keyPressed('q')) {
  if (view.keyPressed('w')) {
    xDirection = 0;
    yDirection = -2;
  }
  else if (view.keyPressed('s')) {
    xDirection = 0;
    yDirection = 2;
  }
  else if (view.keyPressed('d')) {
    xDirection = 2;
    yDirection = 0;
  }
  else if (view.keyPressed('a')) {
    xDirection = -2;
    yDirection = 0;
  }

  snake.move(xDirection, yDirection);

  /* etc. ... */
}

PS.: Ich würde dir raten, Variablen einheitlich zu benennen. Nach der Java Code-Konvention beginnen Variablen mit einem Kleinbuchstaben. Des Weiteren wäre es gut, nicht Deutsch und Englisch zu mixen.

DerBenutzer731 
Fragesteller
 17.12.2021, 20:38

Wenn ich das reinkopiere wird mir aber folgendes angezeigt:

variable xDirection might not have been initialized

0