From d8a38f5805e27a8276b91882cf86c2e1d734bd26 Mon Sep 17 00:00:00 2001 From: Felix Stupp Date: Tue, 12 Apr 2016 09:14:24 +0200 Subject: [PATCH 1/6] Create funktionsliste.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Eine (noch nicht fertige) Übersicht über alle Funktionen, falls die Architektur unverständlich erscheint. --- planung/funktionsliste.md | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 planung/funktionsliste.md diff --git a/planung/funktionsliste.md b/planung/funktionsliste.md new file mode 100644 index 0000000..4e97f5d --- /dev/null +++ b/planung/funktionsliste.md @@ -0,0 +1,21 @@ +# Funktionsliste Zweiundvierzig + +Hier einfach eine grobe Übersicht über alle Funktionen, die jede Klasse als Public / Protected besitzen soll. + +## GeneralMap + +- **static GeneralMap generateMap(int mapID, ...)** + +- **int getPlayerCount()** +- **String getPlayerName()** +- **String getPlayerName(int)** +- **int getPlayerStars()** +- **int getProvinceOwner(int)** +- **int[] getProvinceOwners()** +- **int getProvinceEntityCount(int)** +- **int getProvincesEntityCounts(int[])** +- **int getProvincesEntityCounts(boolean[])** +- **int getProvincesEntityCounts(int)** + +## Province + From 58e2a1169a6c4ac9e78e6e5aa59914c23fde11b7 Mon Sep 17 00:00:00 2001 From: Zocker1999NET Date: Fri, 15 Apr 2016 15:23:34 +0200 Subject: [PATCH 2/6] Updated .gitignore MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Temporäre Office Dateien, die beim Bearbeiten mit Microsoft Office Programmen kurzzeitig entstehen können, werden nun auch ignoriert, um Probleme zu vermeiden. Diese Dateien werden nur verwendet, um beim unerwarteten Beenden von Office noch Änderungen retten zu können. --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index e484cd7..4a9da91 100644 --- a/.gitignore +++ b/.gitignore @@ -15,3 +15,4 @@ hs_err_pid* *.ctxt *.greenfoot .vscode/ +*~$* From 5bf08ad76894da65e6951039d9f74ecb808020b9 Mon Sep 17 00:00:00 2001 From: Zocker1999NET Date: Fri, 15 Apr 2016 15:33:11 +0200 Subject: [PATCH 3/6] =?UTF-8?q?Updated=20.gitignore=20Nun=20werden=20auch?= =?UTF-8?q?=20Excel=20Dateien=20von=20VS-Code=20ignoriert,=20damit=20der?= =?UTF-8?q?=20Arbeitsbereich=20=C3=BCbersichtlicher=20wird.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .vscode/settings.json | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index 0180423..1a124ba 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -6,6 +6,9 @@ "*.class": true, "*.ctxt": true, "project.greenfoot": true, - "**/.vscode": true + "**/.vscode": true, + "*.ods": true, + "*.xls": true, + "*.xlsx": true } } \ No newline at end of file From c7b21d6cfd046224552e92ed92ed1ef9af893144 Mon Sep 17 00:00:00 2001 From: Zocker1999NET Date: Fri, 15 Apr 2016 15:48:39 +0200 Subject: [PATCH 4/6] Anpassung der Architektur MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Gewünschte Änderungen an der Architektur und das Verdeutlichen der Argumente für den Konstruktor sollen den Text (hoffentlich) nun verständlicher gemacht haben. --- planung/architektur.md | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/planung/architektur.md b/planung/architektur.md index ec321fc..84c1a29 100644 --- a/planung/architektur.md +++ b/planung/architektur.md @@ -21,8 +21,6 @@ Die englischen Begriffe *World* und *Actor* stehen für die gegebenen Oberklasse ### Generell -- Alle Funktionen, die einen Wert für ihre Eigenschaft festlegen sollen, sollen auch den aktuellen Wert, denn sie dann gegebenenfalls eintragen (beziehungsweise den alten Wert, falls aus irgend einem Grund doch nichts geändert wird), wieder zurückgeben, um im Code später Abkürzungen verwenden zu können oder direkt die Änderung überprüfen zu können. - - Allgemein wird vom Konstruktor erwartet, dass er alle feste Eigenschaften einer Klasse in der Reihenfolge, wie hier in den Listen vorzufinden, und als die angegebenen Typen annimmt und korrekt speichert. Es kann aber auch spezifische Konstruktoren geben. ### Tipps @@ -179,11 +177,11 @@ Speichert Informationen zu den einzelnen Provinzen ab und stellt diese später a ### Explizite Eigenschaften -- Provinznummer (fest, **int**) -- X/Y-Position auf der Karte (fest; **int**,**int**) -- Angrenzende Provinzen (fest, **boolean[]**) -- Anzeigename (fest, **String**) -- Sterne (fest, **int**) +- Provinznummer (über Konstruktor festgelegt, **int**) +- X/Y-Position auf der Karte (über Konstruktor festgelegt; **int**,**int**) +- Angrenzende Provinzen (über Konstruktor festgelegt, **boolean[]**) +- Anzeigename (über Konstruktor festgelegt, **String**) +- Sterne (über Konstruktor festgelegt, **int**) - Besitzer - Einheitenanzahl @@ -220,7 +218,7 @@ Dieser Wert wird für die zufällige Verteilung von Einheiten benötigt (laut Ac Über die Methode **int getOwner()** bekommt ihr den aktuellen Besitzer zurück (-1 = keiner, 0 = Spieler 1, ...). -Die Methode **setOwner(int)** speichert einen neuen Besitzer ab. +Die Methode **boolean setOwner(int)** speichert einen neuen Besitzer ab. Sie gibt den Erfolg des Setzens zurück, falls also die Zahl kleiner -1 oder größer gleich als die Spieleranzahl sein sollte, wird die Änderung nicht durchgeführt und es wird **false** zurückgegeben. #### Einheitenanzahl @@ -245,8 +243,8 @@ Stellt die Spieler da, speichert Informationen zu diesen ab. Wird von der Weltka ### Explizite Eigenschaften -- Spielernummer (fest, **int**) -- Anzeigename (fest, **String**) +- Spielernummer (über Konstruktor festgelegt, **int**) +- Anzeigename (über Konstruktor festgelegt, **String**) - Sternanzahl - Statistiken 1. Eroberte Provinzen @@ -272,7 +270,7 @@ Ist der lesbare Name des Spielers, damit nicht nur "Spieler 1", ... usw. zu sehe Die Anzahl der Sterne, die ein Spieler besitzt und gegebenenfalls dann in Einheiten umtauschen kann. -**int getStars()**, **int addToStars(int)**, **int removeFromStars(int)**, **int setStars(int)** sind zum Bearbeiten des Werts da. +**int getStars()**, **int addToStars(int)**, **int removeFromStars(int)**, **int setStars(int)** sind zum Bearbeiten des Werts da. Auch sie geben danach den nun aktuellen Wert zurück. **boolean canStarsRemoved(int)** gibt zurück, ob der Spieler diese Anzahl an Sternen verwenden kann (Vereinfachung). @@ -300,6 +298,10 @@ Diese Methode muss zwingend mit der Welt interagieren, um diese Informationen zu Gibt die Anzahl der Provinzen, die der Spieler hat, zurück. Gut für die Statistik und die Anzeigen. +#### redrawPlayer() + +Erzwingt das erneute Zeichnen des Player Objekts, um alle sichtbaren Eigenschaften erneut zu zeichnen. + --- ## Dice From af8a6e5c59c67607fdbd019f964b93e22ab4363d Mon Sep 17 00:00:00 2001 From: Zocker1999NET Date: Fri, 15 Apr 2016 15:51:29 +0200 Subject: [PATCH 5/6] =?UTF-8?q?Funktionliste=20vervollst=C3=A4ndigt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Ist nun auf dem gleichen Stand wie die Architektur selbst und wird nun auch damit gleichzeitig geupdatet. --- planung/funktionsliste.md | 69 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 69 insertions(+) diff --git a/planung/funktionsliste.md b/planung/funktionsliste.md index 4e97f5d..9693d42 100644 --- a/planung/funktionsliste.md +++ b/planung/funktionsliste.md @@ -1,7 +1,17 @@ # Funktionsliste Zweiundvierzig +**Version: 2** + +**Stand: 10.04.2016** (TT.MM.JJJJ / DD.MM.YYYY) + +[Hier die neuste offizielle Version vom Master-Branch sehen](https://github.com/HGE-IT-Course-2016/zweiundvierzig/blob/master/planung/funktionsliste.md) + +[Hier zum gesamten Architekturplan](https://github.com/HGE-IT-Course-2016/zweiundvierzig/blob/master/planung/architektur.md) + Hier einfach eine grobe Übersicht über alle Funktionen, die jede Klasse als Public / Protected besitzen soll. +Dies könnt auch als Checkliste nehmen, um zu sehen, ob ihr bereits alle Funktionen im Code präsent habt. + ## GeneralMap - **static GeneralMap generateMap(int mapID, ...)** @@ -19,3 +29,62 @@ Hier einfach eine grobe Übersicht über alle Funktionen, die jede Klasse als Pu ## Province +- **Province(int, int, int, boolean[], String, int)** + +- **int getID()** +- **boolean isProvinceNear(int)** +- **String getDisplayName()** +- **int getStars()** +- **int getOwner()** +- **setOwner(int)** +- **int getEntityCount()** +- **int addToEntities(int)** +- **int removeFromEntities(int)** +- **int setEntityCount(int)** + +- **redrawProvince()** + +## Player + +- **Player(int, String)** + +- **int getID()** +- **String getDisplayName()** +- **int getStars()** +- **int addToStars(int)** +- **int removeFromStars(int)** +- **int setStars(int)** +- **boolean cnaStarsRemoved(int)** + +- **int[] getStatistics()** +- **gotProvince()** +- **lostProvince()** +- **gotEntities(int)** +- **lostEntity()** + +- **boolean[] getMyProvinces()** +- **int getProvinceCount()** +- **redrawPlayer()** + +## Dice + +- **Dice()** + +- **int getNumber()** + +- **int roll()** + +## GUI_Interface + +*Noch unvollständig* + +## Label + +*Noch unvollständig* + +- **String getText()** +- **String setText(String)** + +## Button + +*Noch unvollständig* \ No newline at end of file From 0586f42caebe417249e45a764ef342116e30fbf7 Mon Sep 17 00:00:00 2001 From: Zocker1999NET Date: Fri, 15 Apr 2016 15:52:34 +0200 Subject: [PATCH 6/6] Architektur mit Link zur Funktionsliste Hier ist nun auch noch ein Link dazugekommen, der auf die Funktionsliste zeigt, um diese besser erreichbar zu gestalten. --- planung/architektur.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/planung/architektur.md b/planung/architektur.md index 84c1a29..1869653 100644 --- a/planung/architektur.md +++ b/planung/architektur.md @@ -4,7 +4,9 @@ **Stand: 10.04.2016** (TT.MM.JJJJ / DD.MM.YYYY) -[Hier die neuste Version vom Master-Branch sehen](https://github.com/HGE-IT-Course-2016/zweiundvierzig/blob/master/planung/architektur.md Link zu GitHub.com) +[Hier die neuste offizielle Version vom Master-Branch sehen](https://github.com/HGE-IT-Course-2016/zweiundvierzig/blob/master/planung/architektur.md) + +[Hier zur übersichtlicheren Funktionsliste](https://github.com/HGE-IT-Course-2016/zweiundvierzig/blob/master/planung/funktionsliste.md) Hier ein möglicher Architekturplan von *Felix Stupp*. Dieser Plan wird regelmäßig angepasst, oben am Datum zu erkennen.