diff --git a/planung/architektur.md b/planung/architektur.md index 3713161..1a11e57 100644 --- a/planung/architektur.md +++ b/planung/architektur.md @@ -56,13 +56,13 @@ Hier werden alle Klassen mit deren öffentliche Methoden (**public** und **prote - *Province* - *Player* -- *Dice* ### GUI Objekte - *GUI_Interface* -- *Label* -- *Button* + - *Label* + - *Button* + - *Dice* ### Sonstige @@ -447,29 +447,6 @@ Erzwingt das erneute Zeichnen des Player Objekts, um alle sichtbaren Eigenschaft --- -## Dice -*extends Actor* - -Stellt einen Würfel als *Actor* dar (vergleichbar mit dem Würfel aus unserem Projekt Zehntausend). - -### Private Eigenschaften - -- Augenzahl - -#### Augenzahl - -Diese Zahl zeigt der Würfel gerade an und kann mit **int getNumber()** abgerufen werden. - -### Zusätzliche Methoden - -- *int* **roll** () - -#### roll() - -Berechnet eine Zufallszahl von 1 bis 6, speichert diese ab und gibt sie auch so gleich zurück. Ändert auch die Anzeige des Würfels. - ---- - ## GUI_Interface *extends Actor* @@ -724,6 +701,59 @@ Erneuert die Darstellung des Buttons mit seinem Anzeigetext auf der Welt. Hiermi --- +## Dice +*extends GUI_Interface* + +### Konstruktorparameter + +Methode 1: **keine Parameter** + +Methode 2: +1. Startwert für die gespeicherte Augenzahl als *int* + +#### Startwert + +Dieser Wert wird im Voraus beim Dice hinterlegt, damit er diese direkt anzeigen kann. Wird dieser Wert nicht angegeben, wird als Augenzahl **0** hinterlegt, stehend für: noch nicht gewürfelt. + +### Private Eigenschaften + +- Augenzahl + +#### Augenzahl + +Der Wert, der beim letzten Würfeln gewürfelt wurde. Dieser Wert wird vom Würfel auch visuell dargestellt. + +### Public Methoden + +- *int* **getNumber** () + +- *void* **setSizeAsSquare** ( *int* length ) + +- *int* **roll** () + +- *void* **redraw** () + +#### getNumber() + +Gibt die aktuell gespeicherte und somit auch visuell sichtbare Augenzahl zurück. + +#### setSizeAsSquare() + +Legt die Größe des Würfels als Quadraht fest. Nur beim Verhältnis 1:1 von Länge:Breite kann eine verzerrungsfreie Darstellung garantiert werden. Vergleichbar mit folgender Zeile: +```java +dice.setSize(length,length) +``` + +#### roll() + +Würfelt den Würfel, speichert die neue Augenzahl ab und erneurt die visuelle Darstellung des Dice. + +#### redraw() + +Erneuert die visuelle Darstellung des Dice. + +--- + ## Utils Eine finale Klasse mit vielen kleinen Methoden, die den restlichen Code verkleinern und besser lesbar gestalten soll. Ergänzungen in Form von eigenen Funktionen dürfen **selbst** eingebracht werden. Alle Methoden dieser Klasse sollen *public* sein. diff --git a/planung/funktionsliste.md b/planung/funktionsliste.md index 7176b47..826e918 100644 --- a/planung/funktionsliste.md +++ b/planung/funktionsliste.md @@ -13,7 +13,7 @@ Falls euere Aufgabe die Umsetzung einer Methode ist, die hier bereits beschriebe Dies könnt auch als Checkliste nehmen, um zu sehen, ob ihr bereits alle Methodenn im Code präsent habt. -## GeneralMap +## GeneralMap (erweitert World) - *GeneralMap* ( *String* backgroundImage, *String[]* playerList, *int[]* colorList ) @@ -28,7 +28,7 @@ Dies könnt auch als Checkliste nehmen, um zu sehen, ob ihr bereits alle Methode - *int[]* **getProvinceOwners** () - *int* **getProvinceEntityCount** ( *int* playerID ) -## Province +## Province (erweitert Actor) - *Province* ( *int* provinceID, *int* continentID, *int* xPos, *int* yPos, *String* displayName, *int* stars, *int[]* neighbourProvinces ) @@ -51,7 +51,7 @@ Dies könnt auch als Checkliste nehmen, um zu sehen, ob ihr bereits alle Methode - *void* **redrawProvince** () -## Player +## Player (erweitert Actor) - *Player* ( *int* playerID, *String* displayName, *int* playerColor ) @@ -74,15 +74,7 @@ Dies könnt auch als Checkliste nehmen, um zu sehen, ob ihr bereits alle Methode - *int* **getProvinceCount** () - *void* **redrawPlayer** () -## Dice - -- *Dice* () - -- *int* **getNumber** () - -- *int* **roll** () - -## GUI_Interface +## GUI_Interface (erweitert Actor) - protected *int* **sx** - protected *int* **sy** @@ -128,4 +120,17 @@ Dies könnt auch als Checkliste nehmen, um zu sehen, ob ihr bereits alle Methode - *void* **setHandler** ( *ButtonEvent* newEventHandler ) - *void* **removeHandler** () +- *void* **redraw** () + +## Dice (erweitert GUI_Interface) + +- *Dice* () +- *Dice* ( *int* startNumber ) + +- *int* **getNumber** () + +- *void* **setSizeAsSquare** () + +- *int* **roll** () + - *void* **redraw** () \ No newline at end of file