Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /**
- *
- *Diese Klasse dient zur Dastellung einer ZELLE. Dabei ist darauf zu achten, dass
- *die ZELLENDARSTELLUNG erst sichtbar wird, wenn ihr x- und y-Position übergeben wurden.
- *Einmal übergeben, lassen sich die Koordinaten nicht mehr ändern.
- *Willst Du z.B. die mit Mausklicks die ZELLE verändern, musst Du sie zuerst an das backend übergeben.
- *Nutze dazu die Methode Anmelden().
- *
- *@author Sebastian Zinkhahn
- */
- public class ZELLENSYMBOL extends ZellDarstellungImpl
- {
- int positionX = super.positionX;
- int positionY = super.positionY;
- String fuellFarbe = "blau";
- String randFarbe = "schwarz";
- boolean fuellungSichtbar = false;
- boolean randSichtbar = true;
- /**
- * Erzeugt eine Zelle mit der angebeneben x- und y-Position im Labyrinth
- * @param xNeu
- * @param yNeu
- */
- public ZELLENSYMBOL(int xNeu, int yNeu)
- {
- super(xNeu, yNeu);
- super.FuellFarbeSetzen(fuellFarbe);
- super.FuellungSichtbarSetzen(fuellungSichtbar);
- super.RandFarbeSetzen(randFarbe);
- super.RandSichtbarSetzen(randSichtbar);
- }
- // /**
- // * Setzt die x- und y-Position der Darstellung.
- // * Diese Methode kann nur einmal(!) benutzt werden.
- // * Danach wirken sich die Änderungen nicht mehr aus.
- // * @see ZellDarstellungImpl#PositionXYSetzen(int, int)
- // */
- // public void PositionXYSetzen(int xNeu, int yNeu)
- // {
- // if(!super.init)
- // {
- // positionX = xNeu;
- // positionY = yNeu;
- // }
- // super.PositionXYSetzen(xNeu, yNeu);
- // }
- /**
- * Ändert die Füllfarbe dieses Symbols
- * @see KruemelDarstellungImpl#FarbeSetzen(java.lang.String)
- */
- public void FuellFarbeSetzen(String farbeNeu)
- {
- fuellFarbe = farbeNeu;
- super.FuellFarbeSetzen(farbeNeu);
- }
- /**
- * Ändert die Randfarbe dieses Symbols
- * @see backend.view.DarstellungImpl#RandFarbeSetzen(java.lang.String)
- */
- public void RandFarbeSetzen(String farbeNeu)
- {
- randFarbe = farbeNeu;
- super.RandFarbeSetzen(farbeNeu);
- }
- /**
- * Gibt an ob das Symbol ausgefüllt werden soll
- * @see backend.view.DarstellungImpl#FuellungSichtbarSetzen(boolean)
- */
- public void FuellungSichtbarSetzen(boolean b)
- {
- fuellungSichtbar = b;
- super.FuellungSichtbarSetzen(b);
- }
- /**
- * Gibt ob der Rand des Symbols gezeichnet werden soll
- * @see backend.view.DarstellungImpl#RandSichtbarSetzen(boolean)
- */
- public void RandSichtbarSetzen(boolean b)
- {
- randSichtbar = b;
- super.RandSichtbarSetzen(b);
- }
- }
- public class ZELLE
- {
- //Attribute
- int posX;
- int posY;
- boolean istMauer;
- //Referenzattribute
- ZELLENSYMBOL zSymbol;
- //Konstruktor
- ZELLE(int xNeu, int yNeu)
- {
- posX = xNeu;
- posY = yNeu;
- istMauer=false;
- zSymbol = new ZELLENSYMBOL(xNeu, yNeu);
- zSymbol.FuellFarbeSetzen("blau");
- zSymbol.FuellungSichtbarSetzen(false);
- }
- //Methoden
- void MauerSetzen (boolean istMauerneu)
- {
- istMauer = istMauerneu;
- zSymbol.FuellungSichtbarSetzen(istMauerneu);
- }
- }
- public class LABYRINTH
- {
- //Referenzattribute
- ZELLE[][] spielFlaeche;
- //Konstruktor
- public LABYRINTH(int breite, int hoehe)
- {
- //Spielflaeche
- spielFlaeche = new ZELLE[breite][hoehe];
- for (int zaehlerY=0; zaehlerY<hoehe; zaehlerY=zaehlerY+1)
- {
- for(int zaehlerX=0; zaehlerX<breite; zaehlerX=zaehlerX+1)
- {
- spielFlaeche[zaehlerX][zaehlerY] = new ZELLE(zaehlerX, zaehlerY);
- }
- }
- }
- //Methoden
- public void GaengeErstellen(int posX, int posY)
- {
- spielFlaeche[posX][posY].MauerSetzen(true);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement