summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/main/java/tlIItools/Affix.java22
1 files changed, 13 insertions, 9 deletions
diff --git a/src/main/java/tlIItools/Affix.java b/src/main/java/tlIItools/Affix.java
index b147ab0b..00fff77a 100644
--- a/src/main/java/tlIItools/Affix.java
+++ b/src/main/java/tlIItools/Affix.java
@@ -88,10 +88,18 @@ public class Affix {
if (effects == null) {
if (afx.effects != null) return false;
} else if (!effects.equals(afx.effects)) {
- // TODO this isn't actually an equals; maybe make this a 'isEquivalent' or 'isSimilarEffect'?
- // -bculkin, 12/29/2020
- return false;
- } else if (enchantSources == null) {
+ Iterator<Effect> leftIter = effects.iterator();
+ Iterator<Effect> rightIter = afx.effects.iterator();
+
+ while (leftIter.hasNext() && rightIter.hasNext()) {
+ Effect left = leftIter.next();
+ Effect right = rightIter.next();
+
+ if (!left.group.equals(right.group)) return false;
+ }
+ }
+
+ if (enchantSources == null) {
if (afx.enchantSources != null) return false;
} else if (!enchantSources.equals(afx.enchantSources)) {
return false;
@@ -133,14 +141,10 @@ public class Affix {
public String getAffixGroupName() {
StringBuilder sb = new StringBuilder();
- for (Effect eft : effects) sb.append(eft.getEffectGroup());
-
+ for (Effect eft : effects) sb.append(eft.group);
for (String enchantSource : enchantSources) sb.append(enchantSource);
-
for (String equipType : equipTypes) sb.append(equipType);
-
for (String nonEquipType : nonequipTypes) sb.append(nonEquipType);
-
for (String socketableType : socketableTypes) sb.append(socketableType);
return sb.toString();