
Untitled
By: a guest on
Jun 21st, 2012 | syntax:
Java | size: 0.94 KB | hits: 21 | expires: Never
public void move(int x, int y) {
//aktuelle Spielerposition
int cX = (int) getPlayerPosition().getX();
int cY = (int) getPlayerPosition().getY();
// Dieses Switch prüft, ob eine Bewegung möglich ist (
//Bei "return" geht er aus der Methode raus, bei "break" bleibt er
switch (getCharAt(cX+x, cY+y)) { //Falls der Block vor dem player ... ist
case "#": return; // Bei Wand > raus aus Methode
case " ":
case "*":
case "$": //bei Kiste und KisteAufFeld auch raus
case ".": break; //Bei Zielfeld und bei ground weiter!
}
//Dieses Switch führt die Bewegung aus
switch(getCharAt(cX+x, cY+y)) {
case ".": setPlayerOnTarget(new Point(cX+x, cY+y)); setGround(cX, cY); break;
case "*":
case "$": setPlayerPosition(new Point(cX+x, cY+y)); setBox(cX+x+x, cY+y+y); setGround(cX, cY); break;
default:
setPlayerPosition(new Point(cX+x, cY+y)); // setze Spieler um x,y weiter
setGround(cX, cY);
}