Checking for landed subguilds when setting nation

This commit is contained in:
2026-07-20 06:57:39 -04:00
parent 586031e810
commit cb81a3093d
+7 -2
View File
@@ -186,8 +186,13 @@ public enum GuildManager {
if (guild.getNation() == null)
return mbEnums.GuildState.Errant;
if (guild.getNation() == guild)
return guild.getSubGuildList().isEmpty() ? mbEnums.GuildState.Sovereign : mbEnums.GuildState.Nation;
if (guild.getNation() == guild) {
// Check if any subguild in the list has an owned city
boolean hasCityOwningSubguild = guild.getSubGuildList().stream()
.anyMatch(subGuild -> subGuild.getOwnedCity() != null);
return hasCityOwningSubguild ? mbEnums.GuildState.Nation : mbEnums.GuildState.Sovereign;
}
if (guild.getOwnedCity() == null)
return mbEnums.GuildState.Sworn;