zisko.multicastor.program.view
Class SnakeGimmick
java.lang.Object
zisko.multicastor.program.view.SnakeGimmick
public class SnakeGimmick
- extends java.lang.Object
Klasse fuer das Snake-Gimmick. Es wird ein 90x90px großes
Feld gezeichnet. Jedes Snake-"Feld" ist 3x3px groß
Behandlung im viewController:
+++++++++ Update der Snake mit moveSnake(snakeDir). Gibt Status als int zurueck +++++
switch(mySnakeGimmick.moveSnake(snakeDir)){
case 1: System.out.println("Found Apple!");
break;
case -1: System.out.println("CRASH!");
break;
case 0: System.out.println("nix passiert");
}
++++++++++ Update der Snake-Richtung: +++++++++++++
public void keyPressed(KeyEvent e){
switch(e.getKeyCode()){
case 38: snakeDir = SnakeGimmick.SNAKE_DIRECTION.N;
break;
case 40: snakeDir = SnakeGimmick.SNAKE_DIRECTION.S;
break;
case 37: snakeDir = SnakeGimmick.SNAKE_DIRECTION.W;
break;
case 39: snakeDir = SnakeGimmick.SNAKE_DIRECTION.E;
default:
}
}
Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
gameIsRunning
public java.lang.Boolean gameIsRunning
SnakeGimmick
public SnakeGimmick()
initSnake
public void initSnake()
- Setzt das Snake-Feld auf die Anfangswerte (zurueck)
drawSnake
public void drawSnake(java.awt.Graphics g)
- Zeichnet das Snake-Spiel
- Parameters:
g
- das Graphics-Objekt, auf dem gezeichnet werden soll
moveSnake
public int moveSnake(SnakeGimmick.SNAKE_DIRECTION d)
- Setzt die Snake ein Feld weiter und prueft die Folgen (Apfel gefunden,
Crash)
- Parameters:
d
- die Richtung in die die Snake bewegt werden soll
- Returns:
- einen Status als int-Wert
1: Apfel gefunden
0: nichts passiert
-1: Crash
dropNewApple
public void dropNewApple()
- Apfel "zieht um".
Neue Location random. Sollte es ein Spieler geschafft haben,
alle Felder mit der Schlange zu fuellen,
wuerde das Game hier in eine Endlosschleife laufen