From: "Enrico Weigelt, metux IT consult" <***@gr13.net>
---
.../client/gui/dialog/SelectDestinationDialog.java | 16 +-
src/net/sf/freecol/client/gui/menu/DebugMenu.java | 2 +-
.../client/gui/panel/FindSettlementPanel.java | 2 +-
.../sf/freecol/client/gui/panel/PlayersTable.java | 2 +-
.../gui/panel/colopedia/NationDetailPanel.java | 4 +-
.../gui/panel/report/ReportForeignAffairPanel.java | 2 +-
src/net/sf/freecol/common/debug/DebugUtils.java | 4 +-
src/net/sf/freecol/common/model/Game.java | 185 +++++++++++----------
src/net/sf/freecol/common/model/Operand.java | 2 +-
src/net/sf/freecol/common/model/Player.java | 14 +-
src/net/sf/freecol/common/model/Tile.java | 2 +-
.../common/networking/AddPlayerMessage.java | 10 --
.../sf/freecol/common/networking/ChangeSet.java | 4 +-
.../sf/freecol/common/networking/LoginMessage.java | 2 +-
src/net/sf/freecol/server/FreeColServer.java | 14 +-
src/net/sf/freecol/server/ai/EuropeanAIPlayer.java | 2 +-
src/net/sf/freecol/server/ai/NativeAIPlayer.java | 2 +-
.../freecol/server/control/InGameController.java | 2 +-
.../freecol/server/control/PreGameController.java | 2 +-
.../server/generator/SimpleMapGenerator.java | 6 +-
src/net/sf/freecol/server/model/ServerGame.java | 2 +-
src/net/sf/freecol/server/model/ServerPlayer.java | 12 +-
.../freecol/common/model/FoundingFatherTest.java | 4 +-
test/src/net/sf/freecol/common/model/GameTest.java | 4 +-
.../freecol/common/model/UnitChangeTypeTest.java | 2 +-
.../net/sf/freecol/util/test/FreeColTestCase.java | 2 +-
26 files changed, 157 insertions(+), 148 deletions(-)
diff --git a/src/net/sf/freecol/client/gui/dialog/SelectDestinationDialog.java b/src/net/sf/freecol/client/gui/dialog/SelectDestinationDialog.java
index 05208c71936..f9c10d55aee 100644
--- a/src/net/sf/freecol/client/gui/dialog/SelectDestinationDialog.java
+++ b/src/net/sf/freecol/client/gui/dialog/SelectDestinationDialog.java
@@ -30,7 +30,6 @@ import java.util.Map.Entry;
import java.util.function.Function;
import java.util.function.Predicate;
import java.util.logging.Logger;
-import java.util.stream.Stream;
import javax.swing.DefaultListModel;
import javax.swing.ImageIcon;
@@ -459,14 +458,13 @@ public final class SelectDestinationDialog extends FreeColDialog<Location>
// of accessible settlement locations and do a bulk path search
// to determine the travel times, and create Destinations from
// the results.
- final Predicate<Player> tradePred = p ->
- p.hasContacted(player) && (canTrade || !p.isEuropean());
- final Function<Player, Stream<Location>> settlementTileMapper = p ->
- transform(p.getSettlements(),
- s -> canReach.test(s) && s.hasContacted(p),
- s -> (Location)s.getTile()).stream();
- List<Location> locs = toList(flatten(game.getLivePlayers(player),
- tradePred, settlementTileMapper));
+ List<Location> locs = new ArrayList<>();
+ for (Player op : game.getLivePlayers(player))
+ if (op.hasContacted(player) && (canTrade || !op.isEuropean()))
+ for (Settlement s : op.getSettlements())
+ if (canReach.test(s) && s.hasContacted(op))
+ locs.add(s.getTile());
+
MultipleAdjacentDecider md = new MultipleAdjacentDecider(locs);
unit.search(unit.getLocation(), md.getGoalDecider(), null,
FreeColObject.INFINITY, null);
diff --git a/src/net/sf/freecol/client/gui/menu/DebugMenu.java b/src/net/sf/freecol/client/gui/menu/DebugMenu.java
index e683bcc7c02..d56f8002c62 100644
--- a/src/net/sf/freecol/client/gui/menu/DebugMenu.java
+++ b/src/net/sf/freecol/client/gui/menu/DebugMenu.java
@@ -154,7 +154,7 @@ public class DebugMenu extends JMenu {
});
this.add(cvpMenu);
cvpMenu.addSeparator();
- for (Player p : game.getLiveEuropeanPlayerList()) {
+ for (Player p : game.getLiveEuropeanPlayers()) {
final JRadioButtonMenuItem cv2
= Utility.localizedRadioButtonMenuItem(p.getCountryLabel(),
FreeColDebugger.debugDisplayColonyValuePlayer() == p);
diff --git a/src/net/sf/freecol/client/gui/panel/FindSettlementPanel.java b/src/net/sf/freecol/client/gui/panel/FindSettlementPanel.java
index 606dcc5fc39..d17db5b1c88 100644
--- a/src/net/sf/freecol/client/gui/panel/FindSettlementPanel.java
+++ b/src/net/sf/freecol/client/gui/panel/FindSettlementPanel.java
@@ -160,7 +160,7 @@ public final class FindSettlementPanel extends FreeColPanel
= new DefaultListModel<>();
Object selected = this.settlementList.getSelectedValue();
- for (Player player : getGame().getLivePlayerList()) {
+ for (Player player : getGame().getLivePlayers()) {
boolean ok;
switch (displayListOption) {
case ONLY_NATIVES:
diff --git a/src/net/sf/freecol/client/gui/panel/PlayersTable.java b/src/net/sf/freecol/client/gui/panel/PlayersTable.java
index 0c30f39d1ca..bf5524512a7 100644
--- a/src/net/sf/freecol/client/gui/panel/PlayersTable.java
+++ b/src/net/sf/freecol/client/gui/panel/PlayersTable.java
@@ -458,7 +458,7 @@ public final class PlayersTable extends JTable {
*/
public void update() {
for (Nation n : this.nations) nationMap.put(n, null);
- for (Player p : thisPlayer.getGame().getLivePlayerList()) {
+ for (Player p : thisPlayer.getGame().getLivePlayers()) {
nationMap.put(p.getNation(), p);
}
fireTableDataChanged();
diff --git a/src/net/sf/freecol/client/gui/panel/colopedia/NationDetailPanel.java b/src/net/sf/freecol/client/gui/panel/colopedia/NationDetailPanel.java
index 26b6524f5dd..47436a5c929 100644
--- a/src/net/sf/freecol/client/gui/panel/colopedia/NationDetailPanel.java
+++ b/src/net/sf/freecol/client/gui/panel/colopedia/NationDetailPanel.java
@@ -79,8 +79,8 @@ public class NationDetailPanel extends ColopediaGameObjectTypePanel<Nation> {
if (getId().equals(id)) return;
Nation nation = getSpecification().getNation(id);
- Player player = CollectionUtils.find(getGame().getLivePlayers(),
- p -> p.getNation() == nation);
+ Player player = getGame().getLivePlayerByNation(nation);
+
NationType currentNationType = (player == null) ? nation.getType()
: player.getNationType();
diff --git a/src/net/sf/freecol/client/gui/panel/report/ReportForeignAffairPanel.java b/src/net/sf/freecol/client/gui/panel/report/ReportForeignAffairPanel.java
index f9937dc24bd..3d5c283098b 100644
--- a/src/net/sf/freecol/client/gui/panel/report/ReportForeignAffairPanel.java
+++ b/src/net/sf/freecol/client/gui/panel/report/ReportForeignAffairPanel.java
@@ -79,7 +79,7 @@ public final class ReportForeignAffairPanel extends ReportPanel {
"[align top]"));
int n;
- for (Player enemy : getGame().getLiveEuropeanPlayerList()) {
+ for (Player enemy : getGame().getLiveEuropeanPlayers()) {
NationSummary ns = igc().getNationSummary(enemy);
if (ns == null) continue;
diff --git a/src/net/sf/freecol/common/debug/DebugUtils.java b/src/net/sf/freecol/common/debug/DebugUtils.java
index 98799254bc0..13ddb27a316 100644
--- a/src/net/sf/freecol/common/debug/DebugUtils.java
+++ b/src/net/sf/freecol/common/debug/DebugUtils.java
@@ -735,7 +735,7 @@ public class DebugUtils {
List<Unit> toEurope = new ArrayList<>();
List<Unit> toAmerica = new ArrayList<>();
HashMap<String,List<Unit>> units = new HashMap<>();
- for (Player tp : sGame.getLiveEuropeanPlayerList()) {
+ for (Player tp : sGame.getLiveEuropeanPlayers()) {
Player p = sGame.getFreeColGameObject(tp.getId(), Player.class);
if (p.getEurope() == null) continue;
inEurope.clear();
@@ -1135,7 +1135,7 @@ public class DebugUtils {
LogBuilder lb = new LogBuilder(256);
lb.add(sis.getName(), "\n\nAlarm\n");
Player mostHated = sis.getMostHated();
- for (Player p : sGame.getLiveEuropeanPlayerList()) {
+ for (Player p : sGame.getLiveEuropeanPlayers()) {
Tension tension = sis.getAlarm(p);
lb.add(Messages.message(p.getNationLabel()),
" ", ((tension == null) ? "(none)"
diff --git a/src/net/sf/freecol/common/model/Game.java b/src/net/sf/freecol/common/model/Game.java
index f079c5c54c4..3d4a14b5d6f 100644
--- a/src/net/sf/freecol/common/model/Game.java
+++ b/src/net/sf/freecol/common/model/Game.java
@@ -22,6 +22,8 @@ package net.sf.freecol.common.model;
import java.lang.ref.WeakReference;
import java.io.StringReader;
import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.Iterator;
@@ -31,7 +33,6 @@ import java.util.NoSuchElementException;
import java.util.UUID;
import java.util.logging.Level;
import java.util.logging.Logger;
-import java.util.function.Predicate;
import java.util.stream.Stream;
import javax.xml.stream.XMLStreamException;
@@ -510,59 +511,46 @@ public class Game extends FreeColGameObject {
/**
* Get all the players in the game.
*
- * @return The list of {@code Player}s.
+ * @return The {@code Collection} of {@code Player}s.
*/
- public List<Player> getPlayerList() {
+ public Collection<Player> getPlayers() {
return this.players;
}
/**
- * Get all the players in the game as a stream.
- *
- * @return The list of {@code Player}s.
- */
- public Stream<Player> getPlayers() {
- return this.players.stream();
- }
-
- /**
* Sort the players list.
*
* @param comparator The {@code Comparator} to sort with.
*/
public void sortPlayers(Comparator<Player> comparator) {
- this.players.sort(comparator);
- }
-
- /**
- * Get players in the game.
- *
- * @param predicate A {@code Predicate} to select suitable players with.
- * @return A list of {@code Player}s.
- */
- public List<Player> getPlayerList(Predicate<Player> predicate) {
- return transform(this.players, predicate);
+ Collections.sort(this.players, comparator);
}
/**
- * Get players in the game.
+ * Get a {@code Player} identified by its nation.
*
- * @param predicate A {@code Predicate} to select suitable players with.
- * @return The stream of {@code Player}s.
+ * @param nation The {@code Nation} to search for.
+ * @return The {@code Player} of the given nation, or null if
+ * not found.
*/
- public Stream<Player> getPlayers(Predicate<Player> predicate) {
- return getPlayerList(predicate).stream();
+ public Player getPlayerByNation(Nation nation) {
+ return getPlayerByNationId(nation.getId());
}
/**
- * Get a {@code Player} identified by its nation.
+ * Get alive {@code Player} identified by its nation.
*
* @param nation The {@code Nation} to search for.
* @return The {@code Player} of the given nation, or null if
- * not found.
+ * not found or already dead.
*/
- public Player getPlayerByNation(Nation nation) {
- return getPlayerByNationId(nation.getId());
+ public final Player getLivePlayerByNation(Nation nation) {
+ if (this.players == null)
+ for (Player p : this.players)
+ if (!p.isUnknownEnemy() && !p.isDead() && p.getNation() == nation)
+ return p;
+
+ return null;
}
/**
@@ -573,7 +561,25 @@ public class Game extends FreeColGameObject {
* not found.
*/
public Player getPlayerByNationId(String nationId) {
- return find(this.players, matchKeyEquals(nationId, Player::getNationId));
+ if ((players != null) || (nationId != null))
+ {
+ for (Player walk : players) {
+ if (walk == null)
+ continue;
+ if (nationId.equals(walk.getNationId()))
+ return walk;
+ }
+ }
+ return null;
+ }
+
+ private static void addPlayerNotExcluded(List<Player> result,
+ Player player,
+ Player[] exclude) {
+ for (Player e : exclude)
+ if (e == player) return;
+
+ result.add(player);
}
/**
@@ -581,72 +587,62 @@ public class Game extends FreeColGameObject {
* excluding supplied ones.
*
* @param exclude The {@code Player}s to exclude.
- * @return A list of live {@code Player}s, without the excluded ones.
+ * @return A {@code Collection} of live {@code Player}s, without the excluded ones.
*/
- public List<Player> getLivePlayerList(final Player... exclude) {
- final Predicate<Player> livePred = p ->
- !p.isUnknownEnemy() && !p.isDead() && !any(exclude, matchKey(p));
- return getPlayerList(livePred);
- }
+ public Collection<Player> getLivePlayers(final Player... exclude) {
+ List<Player> result = new ArrayList<>();
- /**
- * Get a stream of the live players in the game, optionally excluding
- * supplied ones.
- *
- * @param exclude The {@code Player}s to exclude.
- * @return A stream of live {@code Player}s, without the
- * excluded ones.
- */
- public Stream<Player> getLivePlayers(final Player... exclude) {
- return getLivePlayerList(exclude).stream();
+ for (Player p : this.players)
+ if (p.isLive())
+ addPlayerNotExcluded(result, p, exclude);
+
+ return result;
}
/**
* Get a list of the live European players in this game.
*
* @param exclude {@code Player}s to exclude.
- * @return A list of live European {@code Player}s in this game,
+ * @return A {@code Collection} of live European {@code Player}s in this game,
* without the excluded ones.
*/
- public List<Player> getLiveEuropeanPlayerList(final Player... exclude) {
- final Predicate<Player> europeanPred = p ->
- !p.isUnknownEnemy() && !p.isDead() && p.isEuropean()
- && !any(exclude, matchKey(p));
- return getPlayerList(europeanPred);
+ public List<Player> getLiveEuropeanPlayers(final Player... exclude) {
+ List<Player> result = new ArrayList<>();
+
+ for (Player p : this.players)
+ if (p.isLiveEuropean())
+ addPlayerNotExcluded(result, p, exclude);
+
+ return result;
}
/**
- * Get a stream of the live European players in this game.
+ * Get a list of the live European players in this game.
*
* @param exclude {@code Player}s to exclude.
- * @return A stream of live European {@code Player}s in this game,
+ * @return A {@code Collection} of live European {@code Player}s in this game,
* without the excluded ones.
*/
- public Stream<Player> getLiveEuropeanPlayers(final Player... exclude) {
- return getLiveEuropeanPlayerList(exclude).stream();
+ public List<Player> getLiveEuropeanPlayers(List<Player> exclude) {
+ Player[] array = new Player[exclude.size()];
+ exclude.toArray(array);
+ return getLiveEuropeanPlayers(array);
}
/**
* Get a list of the live native players in this game.
*
* @param exclude {@code Player}s to exclude.
- * @return A list of live native {@code Player}s in this game.
+ * @return A {@code Collection} of live native {@code Player}s in this game.
*/
- public List<Player> getLiveNativePlayerList(final Player... exclude) {
- final Predicate<Player> nativePred = p ->
- !p.isUnknownEnemy() && !p.isDead() && p.isIndian()
- && !any(exclude, matchKey(p));
- return getPlayerList(nativePred);
- }
+ public Collection<Player> getLiveNativePlayers(final Player... exclude) {
+ List<Player> result = new ArrayList<>();
- /**
- * Get a stream of the live native players in this game.
- *
- * @param exclude {@code Player}s to exclude.
- * @return A stream of live native {@code Player}s in this game.
- */
- public Stream<Player> getLiveNativePlayers(final Player... exclude) {
- return getLiveNativePlayerList(exclude).stream();
+ for (Player p : this.players)
+ if (p.isLiveNative())
+ addPlayerNotExcluded(result, p, exclude);
+
+ return result;
}
/**
@@ -697,7 +693,10 @@ public class Game extends FreeColGameObject {
* @return The {@code Player} or null if none found.
*/
public Player getPlayerByName(String name) {
- return find(players, matchKeyEquals(name, Player::getName));
+ for (Player p : players)
+ if (Utils.equals(name, p.getName()))
+ return p;
+ return null;
}
/**
@@ -785,7 +784,10 @@ public class Game extends FreeColGameObject {
* @return True if an undead player is present.
*/
public boolean isInRevengeMode() {
- return any(getPlayers(), Player::isUndead);
+ for (Player p : this.players)
+ if (p.isUndead())
+ return true;
+ return false;
}
/**
@@ -822,10 +824,12 @@ public class Game extends FreeColGameObject {
*/
public void setMap(Map newMap) {
if (this.map != newMap) {
- for (HighSeas hs : transform(getLivePlayers(), alwaysTrue(),
- Player::getHighSeas, toListNoNulls())) {
- hs.removeDestination(this.map);
- hs.addDestination(newMap);
+ for (Player p : getLivePlayers()) {
+ HighSeas hs = p.getHighSeas();
+ if (hs != null) {
+ hs.removeDestination(this.map);
+ hs.addDestination(newMap);
+ }
}
}
this.map = newMap;
@@ -1039,7 +1043,10 @@ public class Game extends FreeColGameObject {
* @return True if all players are ready to launch.
*/
public boolean allPlayersReadyToLaunch() {
- return all(getLiveEuropeanPlayerList(), Player::isReady);
+ for (Player p : this.players)
+ if (p.isLiveEuropean() && (!p.isReady()))
+ return false;
+ return true;
}
/**
@@ -1049,7 +1056,7 @@ public class Game extends FreeColGameObject {
* @return A stream of all the {@code Colony}s in the game.
*/
public Stream<Colony> getAllColonies(Player player) {
- return flatten(getLiveEuropeanPlayerList(player), Player::getColonies);
+ return flatten(getLiveEuropeanPlayers(player), Player::getColonies);
}
/**
@@ -1220,9 +1227,10 @@ public class Game extends FreeColGameObject {
if (map != null) {
result = Math.min(result, getMap().checkIntegrity(fix));
}
- for (Player player : getPlayerList()) {
+
+ for (Player player : this.players)
result = Math.min(result, player.checkIntegrity(fix));
- }
+
return result;
}
@@ -1337,7 +1345,8 @@ public class Game extends FreeColGameObject {
nationOptions.toXML(xw);
- List<Player> players = sort(getPlayers());
+ List<Player> players = new ArrayList<>(this.players);
+ Collections.sort(players);
Player unknown = getUnknownEnemy();
if (unknown != null) players.add(unknown);
for (Player p : players) p.toXML(xw);
@@ -1402,9 +1411,9 @@ public class Game extends FreeColGameObject {
// Make sure all work locations have rational default production
// now that all tiles are defined.
- for (Colony c : getAllColoniesList(null)) {
- c.updateProductionTypes();
- }
+ for (Player p : getLiveEuropeanPlayers(players))
+ for (Colony c : p.getColonies())
+ c.updateProductionTypes();
}
/**
diff --git a/src/net/sf/freecol/common/model/Operand.java b/src/net/sf/freecol/common/model/Operand.java
index 10d0f5099b5..97f4ee76b21 100644
--- a/src/net/sf/freecol/common/model/Operand.java
+++ b/src/net/sf/freecol/common/model/Operand.java
@@ -200,7 +200,7 @@ public class Operand extends Scope {
result = game.getSpecification().getInteger(getType());
break;
default:
- for (Player player : game.getLivePlayerList()) {
+ for (Player player : game.getLivePlayers()) {
switch (this.operandType) {
case UNITS:
result += ourCount(player.getUnitList());
diff --git a/src/net/sf/freecol/common/model/Player.java b/src/net/sf/freecol/common/model/Player.java
index 5aad8c26fdf..2ea54dd6ad9 100644
--- a/src/net/sf/freecol/common/model/Player.java
+++ b/src/net/sf/freecol/common/model/Player.java
@@ -727,6 +727,18 @@ public class Player extends FreeColGameObject implements Nameable {
|| playerType == PlayerType.ROYAL;
}
+ public final boolean isLive() {
+ return (!isUnknownEnemy() && !isDead());
+ }
+
+ public final boolean isLiveEuropean() {
+ return (!isUnknownEnemy() && !isDead() && isEuropean());
+ }
+
+ public final boolean isLiveNative() {
+ return (!isUnknownEnemy() && !isDead() && isIndian());
+ }
+
/**
* Is this a native player?
*
@@ -2812,7 +2824,7 @@ public class Player extends FreeColGameObject implements Nameable {
// All missions if using enhanced missionaries.
if (spec.getBoolean(GameOptions.ENHANCED_MISSIONARIES))
- for (Player other : getGame().getLiveNativePlayerList(this))
+ for (Player other : getGame().getLiveNativePlayers(this))
for (IndianSettlement is : getIndianSettlementsWithMissionaryList(this))
vismap.setVisible(is);
diff --git a/src/net/sf/freecol/common/model/Tile.java b/src/net/sf/freecol/common/model/Tile.java
index 4d48060133d..d1e3d205e15 100644
--- a/src/net/sf/freecol/common/model/Tile.java
+++ b/src/net/sf/freecol/common/model/Tile.java
@@ -2497,7 +2497,7 @@ public final class Tile extends UnitLocation implements Named, Ownable {
// Save the cached tiles to saved games.
if (xw.validForSave() && cachedTiles != null) {
- for (Player p : getGame().getLiveEuropeanPlayerList()) {
+ for (Player p : getGame().getLiveEuropeanPlayers()) {
Tile t = getCachedTile(p);
if (t == null) continue;
diff --git a/src/net/sf/freecol/common/networking/AddPlayerMessage.java b/src/net/sf/freecol/common/networking/AddPlayerMessage.java
index 2faa743fcae..b7f7dc7fc68 100644
--- a/src/net/sf/freecol/common/networking/AddPlayerMessage.java
+++ b/src/net/sf/freecol/common/networking/AddPlayerMessage.java
@@ -75,16 +75,6 @@ public class AddPlayerMessage extends DOMMessage {
// Public interface
/**
- * Get the attached players.
- *
- * @return The list of {@code Player}s to add.
- */
- public List<Player> getPlayers() {
- return this.players;
- }
-
-
- /**
* Handle a "addPlayer"-message.
*
* @param server The {@code FreeColServer} handling the message.
diff --git a/src/net/sf/freecol/common/networking/ChangeSet.java b/src/net/sf/freecol/common/networking/ChangeSet.java
index 665f6be59bb..48bef9f74cb 100644
--- a/src/net/sf/freecol/common/networking/ChangeSet.java
+++ b/src/net/sf/freecol/common/networking/ChangeSet.java
@@ -1610,7 +1610,7 @@ public class ChangeSet {
* @return The updated {@code ChangeSet}.
*/
public ChangeSet addGlobalHistory(Game game, HistoryEvent history) {
- for (Player p : game.getLiveEuropeanPlayerList()) {
+ for (Player p : game.getLiveEuropeanPlayers()) {
addHistory((ServerPlayer)p, history);
}
return this;
@@ -1626,7 +1626,7 @@ public class ChangeSet {
*/
public ChangeSet addGlobalMessage(Game game, ServerPlayer omit,
ModelMessage message) {
- for (Player p : game.getLiveEuropeanPlayerList()) {
+ for (Player p : game.getLiveEuropeanPlayers()) {
if (p == (Player)omit) continue;
addMessage((ServerPlayer)p, message);
}
diff --git a/src/net/sf/freecol/common/networking/LoginMessage.java b/src/net/sf/freecol/common/networking/LoginMessage.java
index 7b1a9300688..3e68f687fa0 100644
--- a/src/net/sf/freecol/common/networking/LoginMessage.java
+++ b/src/net/sf/freecol/common/networking/LoginMessage.java
@@ -194,7 +194,7 @@ public class LoginMessage extends DOMMessage {
}
// Complete initialization...
- serverPlayer.initialize(game, game.getLivePlayerList().isEmpty(),
+ serverPlayer.initialize(game, game.getLivePlayers().isEmpty(),
nation);
// ... but override player name.
diff --git a/src/net/sf/freecol/server/FreeColServer.java b/src/net/sf/freecol/server/FreeColServer.java
index 0a44c339c6a..2ded50a8033 100644
--- a/src/net/sf/freecol/server/FreeColServer.java
+++ b/src/net/sf/freecol/server/FreeColServer.java
@@ -600,7 +600,7 @@ public final class FreeColServer {
public void endGame() {
changeServerState(ServerState.END_GAME);
ChangeSet cs = new ChangeSet();
- for (Player p : getGame().getLiveEuropeanPlayerList()) {
+ for (Player p : getGame().getLiveEuropeanPlayers()) {
ServerPlayer sp = (ServerPlayer)p;
if (sp.isAdmin()) continue;
sp.send(new ChangeSet()
@@ -1151,7 +1151,7 @@ public final class FreeColServer {
int savegameVersion = fis.getSavegameVersion();
// @compat 0.10.x
if (savegameVersion < 12) {
- for (Player p : serverGame.getPlayerList()) {
+ for (Player p : serverGame.getPlayers()) {
p.setReady(true); // Players in running game must be ready
// @compat 0.10.5
if (p.isIndian()) {
@@ -1221,7 +1221,7 @@ public final class FreeColServer {
serverGame.sortPlayers(Player.playerComparator);
- for (Player player : serverGame.getLivePlayerList()) {
+ for (Player player : serverGame.getLivePlayers()) {
if (player.isAI()) {
ServerPlayer aiPlayer = (ServerPlayer)player;
addAIConnection(aiPlayer);
@@ -1308,14 +1308,14 @@ public final class FreeColServer {
// Initial stances and randomizations for all players.
spec.generateDynamicOptions();
Random random = getServerRandom();
- for (Player player : serverGame.getLivePlayerList()) {
+ for (Player player : serverGame.getLivePlayers()) {
((ServerPlayer)player).randomizeGame(random);
if (player.isIndian()) {
// Indian players know about each other, but
// European colonial players do not.
final int alarm = (Tension.Level.HAPPY.getLimit()
+ Tension.Level.CONTENT.getLimit()) / 2;
- for (Player other : serverGame.getLiveNativePlayerList(player)) {
+ for (Player other : serverGame.getLiveNativePlayers(player)) {
player.setStance(other, Stance.PEACE);
for (IndianSettlement is : player.getIndianSettlementList()) {
is.setAlarm(other, new Tension(alarm));
@@ -1364,7 +1364,7 @@ public final class FreeColServer {
* @param reveal If true, reveal, if false, hide.
*/
public void exploreMapForAllPlayers(boolean reveal) {
- for (Player player : getGame().getLiveEuropeanPlayerList()) {
+ for (Player player : getGame().getLiveEuropeanPlayers()) {
((ServerPlayer)player).exploreMap(reveal);
}
@@ -1379,7 +1379,7 @@ public final class FreeColServer {
fogOfWarSetting.setValue(FreeColDebugger.getNormalGameFogOfWar());
}
- for (Player player : getGame().getLiveEuropeanPlayerList()) {
+ for (Player player : getGame().getLiveEuropeanPlayers()) {
((ServerPlayer)player).getConnection().sendReconnect();
}
}
diff --git a/src/net/sf/freecol/server/ai/EuropeanAIPlayer.java b/src/net/sf/freecol/server/ai/EuropeanAIPlayer.java
index 43931858669..be6f59c9eb0 100644
--- a/src/net/sf/freecol/server/ai/EuropeanAIPlayer.java
+++ b/src/net/sf/freecol/server/ai/EuropeanAIPlayer.java
@@ -1468,7 +1468,7 @@ public class EuropeanAIPlayer extends MissionAIPlayer {
final ServerPlayer serverPlayer = (ServerPlayer)getPlayer();
lb.mark();
- for (Player p : getGame().getLivePlayerList(serverPlayer)) {
+ for (Player p : getGame().getLivePlayers(serverPlayer)) {
Stance newStance = determineStance(p);
if (newStance != serverPlayer.getStance(p)) {
if (newStance == Stance.WAR && peaceHolds(p)) {
diff --git a/src/net/sf/freecol/server/ai/NativeAIPlayer.java b/src/net/sf/freecol/server/ai/NativeAIPlayer.java
index abdb56014b5..4121139630e 100644
--- a/src/net/sf/freecol/server/ai/NativeAIPlayer.java
+++ b/src/net/sf/freecol/server/ai/NativeAIPlayer.java
@@ -166,7 +166,7 @@ public class NativeAIPlayer extends MissionAIPlayer {
final ServerPlayer serverPlayer = (ServerPlayer)getPlayer();
lb.mark();
- for (Player p : getGame().getLivePlayerList(serverPlayer)) {
+ for (Player p : getGame().getLivePlayers(serverPlayer)) {
Stance newStance = determineStance(p);
if (newStance != serverPlayer.getStance(p)) {
getAIMain().getFreeColServer().getInGameController()
diff --git a/src/net/sf/freecol/server/control/InGameController.java b/src/net/sf/freecol/server/control/InGameController.java
index 2931e3ceb8e..79c8f30ceca 100644
--- a/src/net/sf/freecol/server/control/InGameController.java
+++ b/src/net/sf/freecol/server/control/InGameController.java
@@ -987,7 +987,7 @@ public final class InGameController extends Controller {
}
serverPlayer.addSettlement(settlement);
settlement.placeSettlement(true);//-vis(serverPlayer),-til
- for (Player p : getGame().getLivePlayerList(serverPlayer)) {
+ for (Player p : getGame().getLivePlayers(serverPlayer)) {
((IndianSettlement)settlement).setAlarm(p, (p.isIndian())
? new Tension(Tension.Level.CONTENT.getLimit())
: serverPlayer.getTension(p));//-til
diff --git a/src/net/sf/freecol/server/control/PreGameController.java b/src/net/sf/freecol/server/control/PreGameController.java
index ea5e5ecb23c..21b53176ed4 100644
--- a/src/net/sf/freecol/server/control/PreGameController.java
+++ b/src/net/sf/freecol/server/control/PreGameController.java
@@ -103,7 +103,7 @@ public final class PreGameController extends Controller {
// Check that no two players have the same nation
List<Nation> nations = new ArrayList<>();
- for (Player p : game.getLivePlayerList()) {
+ for (Player p : game.getLivePlayers()) {
final Nation nation = spec.getNation(p.getNationId());
if (nations.contains(nation)) {
setLaunching(false);
diff --git a/src/net/sf/freecol/server/generator/SimpleMapGenerator.java b/src/net/sf/freecol/server/generator/SimpleMapGenerator.java
index e94ad3b5f4d..b1261092a9a 100644
--- a/src/net/sf/freecol/server/generator/SimpleMapGenerator.java
+++ b/src/net/sf/freecol/server/generator/SimpleMapGenerator.java
@@ -234,7 +234,7 @@ public class SimpleMapGenerator implements MapGenerator {
private boolean importIndianSettlements(Map map, LogBuilder lb) {
// First make sure all the players are present.
- for (Player iPlayer : importGame.getLiveNativePlayerList()) {
+ for (Player iPlayer : importGame.getLiveNativePlayers()) {
Player indian = game.getPlayerByNationId(iPlayer.getNationId());
if (indian == null) {
Nation nation = spec.getNation(iPlayer.getNationId());
@@ -334,7 +334,7 @@ public class SimpleMapGenerator implements MapGenerator {
List<Player> indians = new ArrayList<>();
HashMap<String, Territory> territoryMap = new HashMap<>();
- for (Player player : game.getLiveNativePlayerList()) {
+ for (Player player : game.getLiveNativePlayers()) {
switch (player.getNationType().getNumberOfSettlements()) {
case HIGH:
shares += 4;
@@ -1071,7 +1071,7 @@ public class SimpleMapGenerator implements MapGenerator {
// Decorate the map.
makeNativeSettlements(map, lb);
makeLostCityRumours(map, lb);
- createEuropeanUnits(map, game.getLiveEuropeanPlayerList(), lb);
+ createEuropeanUnits(map, game.getLiveEuropeanPlayers(), lb);
return map;
}
}
diff --git a/src/net/sf/freecol/server/model/ServerGame.java b/src/net/sf/freecol/server/model/ServerGame.java
index 6fecadf2deb..75cc4db8c09 100644
--- a/src/net/sf/freecol/server/model/ServerGame.java
+++ b/src/net/sf/freecol/server/model/ServerGame.java
@@ -635,7 +635,7 @@ public class ServerGame extends Game implements ServerModelObject {
@Override
public void csNewTurn(Random random, LogBuilder lb, ChangeSet cs) {
lb.add("GAME ", getId(), ", ");
- for (Player player : getLivePlayerList()) {
+ for (Player player : getLivePlayers()) {
((ServerPlayer)player).csNewTurn(random, lb, cs);
}
diff --git a/src/net/sf/freecol/server/model/ServerPlayer.java b/src/net/sf/freecol/server/model/ServerPlayer.java
index 7546bc597cf..53dc67c6c5c 100644
--- a/src/net/sf/freecol/server/model/ServerPlayer.java
+++ b/src/net/sf/freecol/server/model/ServerPlayer.java
@@ -632,7 +632,7 @@ public class ServerPlayer extends Player implements ServerModelObject {
cs.addDead(this);
// Clean up missions and remove tension/alarm/stance.
- for (Player other : getGame().getLivePlayerList(this)) {
+ for (Player other : getGame().getLivePlayers(this)) {
if (isEuropean() && other.isIndian()) {
for (IndianSettlement is : other.getIndianSettlementList()) {
ServerIndianSettlement sis = (ServerIndianSettlement)is;
@@ -1668,7 +1668,7 @@ outer: for (Effect effect : effects) {
// Do not need to update the clients here, these changes happen
// while it is not their turn.
- for (Player p : getGame().getLiveEuropeanPlayerList(this)) {
+ for (Player p : getGame().getLiveEuropeanPlayers(this)) {
Market market = p.getMarket();
if (market != null) market.addGoodsToMarket(type, amount);
}
@@ -1765,7 +1765,7 @@ outer: for (Effect effect : effects) {
for (IndianSettlement is : allSettlements) {
java.util.Map<Player, Tension.Level> oldLevel = new HashMap<>();
oldLevels.put(is, oldLevel);
- for (Player enemy : game.getLiveEuropeanPlayerList(this)) {
+ for (Player enemy : game.getLiveEuropeanPlayers(this)) {
Tension alarm = is.getAlarm(enemy);
oldLevel.put(enemy,
(alarm == null) ? null : alarm.getLevel());
@@ -1775,7 +1775,7 @@ outer: for (Effect effect : effects) {
// Do the settlement alarms first.
for (IndianSettlement is : allSettlements) {
java.util.Map<Player, Integer> extra = new HashMap<>();
- for (Player enemy : game.getLiveEuropeanPlayerList(this)) {
+ for (Player enemy : game.getLiveEuropeanPlayers(this)) {
extra.put(enemy, 0);
}
@@ -1959,7 +1959,7 @@ outer: for (Effect effect : effects) {
String eventId = event.getId();
switch (eventId) {
case "model.event.resetBannedMissions":
- for (Player p : game.getLiveNativePlayerList()) {
+ for (Player p : game.getLiveNativePlayers()) {
if (p.missionsBanned(this)) {
p.removeMissionBan(this);
cs.add(See.only(this), p);
@@ -4477,7 +4477,7 @@ outer: for (Effect effect : effects) {
Stance sta = getStance(s);
boolean war = sta == Stance.WAR;
if (sta == Stance.UNCONTACTED) continue;
- for (Player p : game.getLiveEuropeanPlayerList(this)) {
+ for (Player p : game.getLiveEuropeanPlayers(this)) {
ServerPlayer sp = (ServerPlayer) p;
if (p == s || !p.hasContacted(this)
|| !p.hasContacted(s)) continue;
diff --git a/test/src/net/sf/freecol/common/model/FoundingFatherTest.java b/test/src/net/sf/freecol/common/model/FoundingFatherTest.java
index e559c879424..a9bea46ee66 100644
--- a/test/src/net/sf/freecol/common/model/FoundingFatherTest.java
+++ b/test/src/net/sf/freecol/common/model/FoundingFatherTest.java
@@ -126,7 +126,7 @@ public class FoundingFatherTest extends FreeColTestCase {
// this feature is not used at the moment
Game game = getGame();
for (FoundingFather father : spec().getFoundingFathers()) {
- for (Player player : game.getPlayerList()) {
+ for (Player player : game.getPlayers()) {
assertEquals(player.getNationId(), player.isEuropean(),
father.isAvailableTo(player));
}
@@ -151,7 +151,7 @@ public class FoundingFatherTest extends FreeColTestCase {
scopes.add(dutchScope);
scopes.add(frenchScope);
newFather.setScopes(scopes);
- for (Player player : game.getPlayerList()) {
+ for (Player player : game.getPlayers()) {
assertEquals(player.getNationId(),
(player == french || player == dutch),
newFather.isAvailableTo(player));
diff --git a/test/src/net/sf/freecol/common/model/GameTest.java b/test/src/net/sf/freecol/common/model/GameTest.java
index b2a74a30cc1..1b89092d44c 100644
--- a/test/src/net/sf/freecol/common/model/GameTest.java
+++ b/test/src/net/sf/freecol/common/model/GameTest.java
@@ -65,8 +65,8 @@ public class GameTest extends FreeColTestCase {
players.sort(Player.playerComparator);
game.sortPlayers(Player.playerComparator);
assertEquals(spec().getNations().size() - counter,
- count(game.getPlayers()));
- assertEquals(players, game.getPlayerList());
+ game.getPlayers().size());
+ assertEquals(players, game.getPlayers());
}
public void testTurn() {
diff --git a/test/src/net/sf/freecol/common/model/UnitChangeTypeTest.java b/test/src/net/sf/freecol/common/model/UnitChangeTypeTest.java
index 2af6e1874d1..7fe346b7553 100644
--- a/test/src/net/sf/freecol/common/model/UnitChangeTypeTest.java
+++ b/test/src/net/sf/freecol/common/model/UnitChangeTypeTest.java
@@ -41,7 +41,7 @@ public class UnitChangeTypeTest extends FreeColTestCase {
assertEquals("Education has no scopes", 0, count(uct.getScopes()));
// empty scope applies to all players
- for (Player player : getStandardGame().getPlayerList()) {
+ for (Player player : getStandardGame().getPlayers()) {
assertTrue("Empty scopes apply to all players",
uct.appliesTo(player));
}
diff --git a/test/src/net/sf/freecol/util/test/FreeColTestCase.java b/test/src/net/sf/freecol/util/test/FreeColTestCase.java
index 61b885a2ce7..68a1fc90f60 100644
--- a/test/src/net/sf/freecol/util/test/FreeColTestCase.java
+++ b/test/src/net/sf/freecol/util/test/FreeColTestCase.java
@@ -460,7 +460,7 @@ public class FreeColTestCase extends TestCase {
map.resetHighSeasCount();
if (exploredByAll) {
map.forEachTile(t -> {
- for (Player p : game.getLiveEuropeanPlayerList()) {
+ for (Player p : game.getLiveEuropeanPlayers()) {
t.setExplored(p, true);
}
});
--
2.11.0.rc0.7.gbe5a750