KeyListener

Wilczeq19

Mitglied
Hallo, kann jemand helfen kommentieren diese quelle Code. Was genau jede stricht mach und so weiter….





addMouseListener(new MouseAdapter() {
@Override
public void mousePressed(MouseEvent e) {
if (scoreboard.isGameOver()) {
startNewGame();
repaint();
}
}
});


//
addKeyListener(new KeyAdapter() {
boolean fastDown;

@Override
public void keyPressed(KeyEvent e) {

if (scoreboard.isGameOver())
return;

switch (e.getKeyCode()) {

case KeyEvent.VK_UP:
if (canRotate(fallingShape))
rotate(fallingShape);
break;

case KeyEvent.VK_LEFT:
if (canMove(fallingShape, Dir.left))
move(fallingShape, Dir.left);
break;

case KeyEvent.VK_RIGHT:
if (canMove(fallingShape, Dir.right))
move(fallingShape, Dir.right);
break;

case KeyEvent.VK_DOWN:
if (!fastDown) {
fastDown = true;
while (canMove(fallingShape, Dir.down)) {
move(fallingShape, Dir.down);
repaint();
}
shapeHasLanded();
}
}
repaint();
}

@Override
public void keyReleased(KeyEvent e) {
fastDown = false;
}
});
}
 

Wilczeq19

Mitglied
Java:
 addKeyListener(new KeyAdapter() { //KeyListener registrieren
            boolean fastDown;//

            @Override
            public void keyPressed(KeyEvent e) { //Wird ausgeführt, wenn eine Taste gedrückt wurde

                if (scoreboard.isGameOver())
                    return; //
               
              //  System.out.println(e.getKeyCode()); 
             

                switch (e.getKeyCode()) {

                
        
                    case KeyEvent.VK_UP:
                        if (canRotate(fallingShape))
                            rotate(fallingShape);
                        break;
                   
                    case KeyEvent.VK_LEFT:
                        if (canMove(fallingShape, Dir.left))
                            move(fallingShape, Dir.left);
                        break;

                    case KeyEvent.VK_RIGHT:
                        if (canMove(fallingShape, Dir.right))
                            move(fallingShape, Dir.right);
                        break;
 
                    case KeyEvent.VK_DOWN:
                        if (!fastDown) {
                            fastDown = true;
                            while (canMove(fallingShape, Dir.down)) {
                                move(fallingShape, Dir.down);
                                repaint();
                            }
                            shapeHasLanded(); //
                        }
                }
                repaint(); //wiederholen
            }

            @Override
            public void keyReleased(KeyEvent e) { // Wird ausgeführt, wenn eine Taste losgelassen wurde
                fastDown = false;
            }
        });
    }
 

Wilczeq19

Mitglied
Ich habe diesen Code und ich muss genau schreiben (Kommentar schreiben) was jeder Methode etc. macht. Weil ich muss erklären, dass meiner klasse und ich habe selbe keine Ahnung.
 

Robat

Top Contributor
Fang doch mal selber an.
Du musst doch einfach nur die englischen Wörter ins deutsche übersetzen und dann kannst du schon viel ableiten ;)
 

Neue Themen


Oben