Merge pull request #40 from HGE-IT-Course-2016/master

GruenRoteBranch - Aktualisierung
master
Achim 8 years ago committed by GitHub
commit c45cdad866

@ -1,11 +1,12 @@
import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
import java.lang.Math;
/**
* Oberklasse für verschiedene Maps;
* neue Maps werden als Unterklasse dieser Klasse eingefügt.
*
* @author GruenerWal, MaxiJohl
* @version 0.2.0
Oberklasse für verschiedene Maps;
neue Maps werden als Unterklasse dieser Klasse eingefügt.
@author GruenerWal, MaxiJohl, Felix Stupp
@version 0.3.0
*/
public abstract class GeneralMap extends World
{
@ -14,6 +15,16 @@ public abstract class GeneralMap extends World
Später evtl. weitere Werte wie Schwierigkeit denkbar
*/
private final int X_OFFSET = 0; // Verschiebt die Provinzen nach rechts
private final int Y_OFFSET = 0; // Verschiebt die Provinzen nach unten
/*
Die einzelnen Positionen der Provinzen wird mit SCALE_VALUE/10000 multipliziert.
Dies ist nützlich, wenn die Karte beispielsweise nur noch 80% der Originalgröße bei ihrer Darstellung groß ist.
Bei diesem Beispiel wäre hier, neben dem Offset oben, der Wert 0.8 einzutragen.
*/
private final double SCALE_VALUE = 1;
protected Province[] provinces;
protected Player[] players;
@ -34,6 +45,15 @@ public abstract class GeneralMap extends World
}
}
/**
Fügt alle Provinzen aus dem Array der Welt an der entsprechden Stelle zu.
*/
protected void initProvinces() {
for(int i = 1; i < provinces.length; i++) {
addObject(provinces[i],((int) Math.floor(provinces[i].getXPos() * SCALE_VALUE)) + X_OFFSET,((int) Math.floor(provinces[i].getYPos() * SCALE_VALUE)) + Y_OFFSET);
}
}
/**
Gibt die Anzahl der vorhandenen Spieler aus.
*/

@ -1,45 +1,45 @@
import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
/**
* Klasse der Standard-Welt
* (Also die normale Weltkarte mit allen Kontinenten)
*
* @author GruenerWal, MaxiJohl
* @version 0.3.0
Klasse der Standard-Welt
(Also die normale Weltkarte mit allen Kontinenten)
@author GruenerWal, MaxiJohl
@version 0.3.0
*/
public class Map_World extends GeneralMap
{
/**
* Anzahl der Provinzen.
Anzahl der Provinzen.
*/
int provinceCount = 42;
/**
* Konstruktor der Weltkarte;
* konstruiert eine GeneralMap mit den Ausmassen 1600 auf 900 Pixel.
Konstruktor der Weltkarte;
konstruiert eine GeneralMap mit den Ausmassen 1600 auf 900 Pixel.
*/
public Map_World(String[] playerList, int[] colorList)
{
super("",playerList,colorList);
/*
* Hier werden später sämtliche Provinzen der Standard-Map erstellt.
* Dies funktioniert folgendermassen:
* =================================================================
*
* Dieses kürzere Format ersetzt den langen Code und sorgt eventuell sogar für einen Geschwindigkeitsschub. Dabei sollte diesselbe Funktionalität erhalten bleiben.
*
* provinces[<Provinz-ID>] = new Province(<Provinz-ID>,<Kontinent-ID>,<X-Position>,<Y-Position>,<Anzahl Sterne>,"<Anzeigename>", new int[] { <Liste aller Nachbarprovinzen> });
*
* =================================================================
* Der Speicherplatz für provinces[0] bleibt leer, da es keine Provinz mit der ID 0 gibt!
*
* Und ja, ich weiss, dass das scheisse viel Schreibarbeit ist.
* Aber da muss man durch, wir habens auch hinbekommen :P
*
* ~GruenerWal
Hier werden später sämtliche Provinzen der Standard-Map erstellt.
Dies funktioniert folgendermassen:
=================================================================
Dieses kürzere Format ersetzt den langen Code und sorgt eventuell sogar für einen Geschwindigkeitsschub. Dabei sollte diesselbe Funktionalität erhalten bleiben.
provinces[<Provinz-ID>] = new Province(<Provinz-ID>,<Kontinent-ID>,<X-Position>,<Y-Position>,<Anzahl Sterne>,"<Anzeigename>", new int[] { <Liste aller Nachbarprovinzen> });
=================================================================
Der Speicherplatz für provinces[0] bleibt leer, da es keine Provinz mit der ID 0 gibt!
Und ja, ich weiss, dass das scheisse viel Schreibarbeit ist.
Aber da muss man durch, wir habens auch hinbekommen :P
~GruenerWal
*/
// Festlegung der Provinz-Anzahl
@ -103,9 +103,6 @@ public class Map_World extends GeneralMap
provinces[41] = new Province(41 , 6 , 1000, 595 , 1 , "Ost Australien" , new int[] {40 , 42});
provinces[42] = new Province(42 , 6 , 934 , 628 , 1 , "West Australien" , new int[] {40 , 41 , 39});
for (int c = 1; c <= provinceCount; c++)
{
addObject(provinces[c],provinces[c].getXPos(),provinces[c].getYPos());
}
initProvinces();
}
}

@ -120,11 +120,11 @@ Die Provinzliste enthält alle Provinzobjekte, die auf der Karte zu sehen sind.
### Protected Methoden
- *void* **addProvinceToMap** ( *Province* province )
- *void* **initProvinces** ()
#### addProvinceToMap()
#### initProvinces()
Diese Methode soll das Hinzufügen der Provinzen, sowohl in das Array, als auch an die richtige Position auf der *World* übernehmen. Sollte eine Provinz-ID zweimal verwendet werden sollen, wird diese Methode einen Fehler auslösen!
Diese Methode soll das Hinzufügen der Provinzen an die richtige Position auf der *World* übernehmen (nicht ins Array). Diese Methode sucht sich alle Provinzen aus dem Array *Province[]* **provinces**.
### Public Methoden
@ -244,6 +244,8 @@ Diese Eigenschaft speichert, wie viele Einheiten auf diesem Feld stehen (natürl
### Public Methoden
- *int* **getXPos** ()
- *int* **getYPos** ()
- *int* **getID** ()
- *int* **getContinentID** ()
- *String* **getDisplayName** ()
@ -263,6 +265,14 @@ Diese Eigenschaft speichert, wie viele Einheiten auf diesem Feld stehen (natürl
- *void* **redrawProvince** ()
#### getXPos()
Gibt die in der Provinz hinterlegte X-Position zurück.
#### getYPos()
Gibt die in der Provinz hinterlegte Y-Position zurück.
#### getID()
Gibt die Provinz-ID dieser Provinz zurück.

@ -17,7 +17,7 @@ Dies könnt auch als Checkliste verwenden, um zu sehen, ob ihr bereits alle Meth
- *GeneralMap* ( *String* backgroundImage, *String[]* playerList, *int[]* colorList )
- protected *void* **addProvinceToMap** ( *Province* province )
- protected *void* **initProvinces** ()
- *int* **getPlayerCount** ()
- *String* **getPlayerName** ()
@ -32,6 +32,8 @@ Dies könnt auch als Checkliste verwenden, um zu sehen, ob ihr bereits alle Meth
- *Province* ( *int* provinceID, *int* continentID, *int* xPos, *int* yPos, *String* displayName, *int* stars, *int[]* neighbourProvinces )
- *int* **getXPos** ()
- *int* **getYPos** ()
- *int* **getID** ()
- *int* **getContinentID** ()
- *String* **getDisplayName** ()

Loading…
Cancel
Save