40 lines
1.2 KiB
Java
40 lines
1.2 KiB
Java
package game.map;
|
|
|
|
import java.util.ArrayList;
|
|
import java.util.Collections;
|
|
import java.util.List;
|
|
import java.util.Random;
|
|
|
|
/**
|
|
* Diese Klasse teilt Burgen in Königreiche auf
|
|
*/
|
|
public class Clustering {
|
|
|
|
private Random random;
|
|
private final List<Castle> allCastles;
|
|
private final int kingdomCount;
|
|
|
|
/**
|
|
* Ein neues Clustering-Objekt erzeugen.
|
|
* @param castles Die Liste von Burgen, die aufgeteilt werden sollen
|
|
* @param kingdomCount Die Anzahl von Königreichen die generiert werden sollen
|
|
*/
|
|
public Clustering(List<Castle> castles, int kingdomCount) {
|
|
if (kingdomCount < 2)
|
|
throw new IllegalArgumentException("Ungültige Anzahl an Königreichen");
|
|
|
|
this.random = new Random();
|
|
this.kingdomCount = kingdomCount;
|
|
this.allCastles = Collections.unmodifiableList(castles);
|
|
}
|
|
|
|
/**
|
|
* Gibt eine Liste von Königreichen zurück.
|
|
* Jedes Königreich sollte dabei einen Index im Bereich 0-5 bekommen, damit die Burg richtig angezeigt werden kann.
|
|
* Siehe auch {@link Kingdom#getType()}
|
|
*/
|
|
public List<Kingdom> getPointsClusters() {
|
|
// TODO Clustering#getPointsClusters()
|
|
return new ArrayList<>();
|
|
}
|
|
}
|