public static boolean factionsMatch(Factioned a, Factioned b) { if (targetHasFaction(a.getFaction(), b)) { return true; } return targetHasFaction(a.getAdditionalFaction(), b); }
public static boolean targetHasFaction(String faction, Factioned target) { if (faction == null || faction.isEmpty()) { return false; } String mainFaction = target.getFaction(); if (mainFaction == null) { mainFaction = "#"; } String additionalFaction = target.getAdditionalFaction(); if (additionalFaction == null) { additionalFaction = "#"; } return faction.equals(mainFaction) || faction.equals(additionalFaction); }