Province Offset Einrichtung

- *GeneralMap*: Hinzufügen der Konstanten und der Methode **initProvinces**
- *Map_World*: Umstellung auf Verwendung der neuen Methode
- Architektur: Dokumentation der neuen Methode hinzugefügt, dabei wurde die Methode **addProvinceToMap** gestrichen
pull/38/head
Zocker1999NET 9 years ago
parent 49635709e0
commit 6d9c86271b

@ -6,7 +6,7 @@ import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
@author GruenerWal, MaxiJohl, Felix Stupp
@version 0.3.0
*/
*/
public abstract class GeneralMap extends World
{
/*
@ -14,6 +14,18 @@ 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 8000 einzutragen.
Die vorherige Erhöhung des Skalars ist mit der höheren Genauigkeit bei der Arbeit mit dem int-Basistyp zu erklären.
*/
private final int SCALE_VALUE = 10000; // SCALE_VALUE/10000 wird verwendet
protected Province[] provinces;
protected Player[] players;
@ -34,6 +46,21 @@ 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++) {
Province p = provinces[i];
int s = SCALE_VALUE/10000;
int x = p.getX();
int y = p.getY();
x = (x * s) + X_OFFSET;
y = (y * s) + y_OFFSET;
addObject(p,x,y);
}
}
/**
Gibt die Anzahl der vorhandenen Spieler aus.
*/

@ -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

@ -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** ()

Loading…
Cancel
Save