Support for multiple pre-reqs

This commit is contained in:
2024-08-21 16:34:43 -04:00
parent bedf3761bd
commit d3ef0c828d
3 changed files with 13 additions and 8 deletions
+11 -6
View File
@@ -61,7 +61,8 @@ public class PowersParser {
StringBuilder powerBuilder = new StringBuilder();
String conditionString;
String powerString;
java.util.Iterator<String> iterator;
java.util.Iterator<String> argumentIterator;
int endPos = 0;
// Separate out any conditions from the power data
@@ -95,7 +96,7 @@ public class PowersParser {
while (matcher.find())
powerHeader.add(matcher.group().trim());
java.util.Iterator<String> iterator = powerHeader.iterator();
iterator = powerHeader.iterator();
powerEntry.power_id = iterator.next();
powerEntry.power = iterator.next().replaceAll("\"", "");
@@ -202,10 +203,14 @@ public class PowersParser {
while (matcher1.find())
arguments.add(matcher1.group().trim());
equipmentPreReq.slot = mbEnums.EquipSlotType.valueOf(arguments.get(0));
equipmentPreReq.skill = arguments.get(1).replaceAll("\"", "");
equipmentPreReq.level = Integer.parseInt(arguments.get(2));
powerEntry.equipmentPreReq = equipmentPreReq;
argumentIterator = arguments.iterator();
while (argumentIterator.hasNext()) {
equipmentPreReq.slot = mbEnums.EquipSlotType.valueOf(arguments.get(0));
equipmentPreReq.skill = arguments.get(1).replaceAll("\"", "");
equipmentPreReq.required = Integer.parseInt(arguments.get(2));
powerEntry.equipmentPreReq.add(equipmentPreReq);
}
break;
case "CANCASTWHILEMOVING":
powerEntry.canCastWhileMoving = Boolean.parseBoolean(lineValues.get(1).trim());
+1 -1
View File
@@ -14,6 +14,6 @@ public class EquipmentPreReq {
public mbEnums.EquipSlotType slot;
public String skill;
public int level;
public int required;
}
+1 -1
View File
@@ -50,7 +50,7 @@ public class PowerEntry {
public boolean canCastWhileMoving = false;
public boolean bladeTrails = false;
public ArrayList<EffectDescription> effectPreReqs = new ArrayList<>();
public EquipmentPreReq equipmentPreReq;
public ArrayList<EquipmentPreReq> equipmentPreReq = new ArrayList<>();
public EnumSet<mbEnums.MonsterType> monsterRestricts = EnumSet.noneOf(mbEnums.MonsterType.class);
public EnumSet<mbEnums.MonsterType> monsterPrereqs = EnumSet.noneOf(mbEnums.MonsterType.class);
public boolean shouldCheckPath = false;