From: "Enrico Weigelt, metux IT consult" <enrico.weig...@gr13.net>

---
 src/net/sf/freecol/common/model/Specification.java | 51 ++++++++++++++--------
 1 file changed, 32 insertions(+), 19 deletions(-)

diff --git a/src/net/sf/freecol/common/model/Specification.java 
b/src/net/sf/freecol/common/model/Specification.java
index 698b311cd5c..8564f3e2a52 100644
--- a/src/net/sf/freecol/common/model/Specification.java
+++ b/src/net/sf/freecol/common/model/Specification.java
@@ -45,6 +45,7 @@ import net.sf.freecol.common.io.FreeColXMLReader;
 import net.sf.freecol.common.io.FreeColXMLWriter;
 import net.sf.freecol.common.model.NationOptions.Advantages;
 import net.sf.freecol.common.model.UnitChangeType.UnitChange;
+import net.sf.freecol.common.util.Utils;
 import net.sf.freecol.common.option.AbstractOption;
 import net.sf.freecol.common.option.AbstractUnitOption;
 import net.sf.freecol.common.option.BooleanOption;
@@ -1285,8 +1286,10 @@ public final class Specification {
      * @return The {@code UnitChangeType} found, or null if none present.
      */
     public UnitChangeType getUnitChangeType(String id) {
-        return find(unitChangeTypeList,
-                    matchKeyEquals(id, UnitChangeType::getId));
+        for (UnitChangeType uct : unitChangeTypeList)
+            if (Utils.equals(id, uct.getId()))
+                return uct;
+        return null;
     }
 
     /**
@@ -1410,18 +1413,21 @@ public final class Specification {
      * @return The free colonist unit type.
      */
     public UnitType getDefaultUnitType(NationType nationType) {
-        final Predicate<UnitType> p = (nationType == null)
-            ? ut -> !ut.hasAbility(Ability.BORN_IN_INDIAN_SETTLEMENT)
-                && !ut.hasAbility(Ability.REF_UNIT)
-            : (nationType.isIndian())
-            ? ut -> ut.hasAbility(Ability.BORN_IN_INDIAN_SETTLEMENT)
-                && !ut.hasAbility(Ability.REF_UNIT)
-            : (nationType.isREF())
-            ? ut -> !ut.hasAbility(Ability.BORN_IN_INDIAN_SETTLEMENT)
-                && ut.hasAbility(Ability.REF_UNIT)
-            : ut -> !ut.hasAbility(Ability.BORN_IN_INDIAN_SETTLEMENT)
-                && !ut.hasAbility(Ability.REF_UNIT);
-        return find(defaultUnitTypes, p, getDefaultUnitType());
+        for (UnitType ut : defaultUnitTypes)
+            if ((nationType == null)
+                    ? !ut.hasAbility(Ability.BORN_IN_INDIAN_SETTLEMENT)
+                        && !ut.hasAbility(Ability.REF_UNIT)
+                    : (nationType.isIndian())
+                    ? ut.hasAbility(Ability.BORN_IN_INDIAN_SETTLEMENT)
+                        && !ut.hasAbility(Ability.REF_UNIT)
+                    : (nationType.isREF())
+                    ? !ut.hasAbility(Ability.BORN_IN_INDIAN_SETTLEMENT)
+                        && ut.hasAbility(Ability.REF_UNIT)
+                    : !ut.hasAbility(Ability.BORN_IN_INDIAN_SETTLEMENT)
+                        && !ut.hasAbility(Ability.REF_UNIT))
+                return ut;
+
+        return getDefaultUnitType();
     }
 
     /**
@@ -1758,8 +1764,10 @@ public final class Specification {
      *     if any.
      */
     public OptionGroup getDifficultyOptionGroup(String id) {
-        return find(getDifficultyLevels(),
-                    matchKeyEquals(id, FreeColObject::getId));
+        for (OptionGroup dl : getDifficultyLevels())
+            if (Utils.equals(id, dl.getId()))
+                return dl;
+        return null;
     }
 
     /**
@@ -2337,9 +2345,14 @@ public final class Specification {
             for (SettlementType st : nt.getSettlementTypes()) {
                 for (PlunderType pt : st.getPlunderTypes()) {
                     if (pt.getId() == null) {
-                        Scope scope = find(pt.getScopes(),
-                            matchKey("model.ability.plunderNatives",
-                                     Scope::getAbilityId));
+                        Scope scope = null;
+                        for (Scope sc : pt.getScopes()) {
+                            if (Utils.equals("model.ability.plunderNatives", 
sc.getAbilityId())) {
+                                scope = sc;
+                                break;
+                            }
+                        }
+
                         String id = "plunder." + nt.getSuffix()
                             + ((st.isCapital()) ? ".capital" : "")
                             + ((scope == null) ? "" : ".extra");
-- 
2.11.0.rc0.7.gbe5a750


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
Freecol-developers mailing list
Freecol-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freecol-developers

Reply via email to