Guild state set previously

This commit is contained in:
2026-05-10 11:49:51 -04:00
parent 12f6d7574d
commit 631989e626
@@ -35,8 +35,8 @@ public class BreakFealtyHandler extends AbstractClientMsgHandler {
BreakFealtyMsg bfm; BreakFealtyMsg bfm;
PlayerCharacter player; PlayerCharacter player;
Guild toBreak; Guild nation;
Guild guild; Guild protectorate;
Dispatch dispatch; Dispatch dispatch;
bfm = (BreakFealtyMsg) baseMsg; bfm = (BreakFealtyMsg) baseMsg;
@@ -49,55 +49,55 @@ public class BreakFealtyHandler extends AbstractClientMsgHandler {
if (player == null) if (player == null)
return true; return true;
toBreak = (Guild) DbManager.getObject(GameObjectType.Guild, bfm.getGuildUUID()); nation = (Guild) DbManager.getObject(GameObjectType.Guild, bfm.getGuildUUID());
if (toBreak == null) { if (nation == null) {
ErrorPopupMsg.sendErrorMsg(player, "A Serious error has occured. Please post details for to ensure transaction integrity"); ErrorPopupMsg.sendErrorMsg(player, "A Serious error has occured. Please post details for to ensure transaction integrity");
return true; return true;
} }
guild = player.getGuild(); protectorate = player.getGuild();
if (guild == null) { if (protectorate == null) {
ErrorPopupMsg.sendErrorMsg(player, "You do not belong to a guild!"); ErrorPopupMsg.sendErrorMsg(player, "You do not belong to a guild!");
return true; return true;
} }
if (toBreak.isNPCGuild()) { if (nation.isNPCGuild()) {
if (GuildStatusController.isGuildLeader(player.getGuildStatus()) == false) { if (!GuildStatusController.isGuildLeader(player.getGuildStatus())) {
ErrorPopupMsg.sendErrorMsg(player, "Only guild leader can break fealty!"); ErrorPopupMsg.sendErrorMsg(player, "Only guild leader can break fealty!");
return true; return true;
} }
if (!DbManager.GuildQueries.UPDATE_PARENT(guild.getObjectUUID(), WorldServer.worldUUID)) { if (!DbManager.GuildQueries.UPDATE_PARENT(protectorate.getObjectUUID(), WorldServer.worldUUID)) {
ErrorPopupMsg.sendErrorMsg(player, "A Serious error has occurred. Please post details for to ensure transaction integrity"); ErrorPopupMsg.sendErrorMsg(player, "A Serious error has occurred. Please post details for to ensure transaction integrity");
return true; return true;
} }
switch (guild.guildState) { switch (protectorate.guildState) {
case Sworn: case Sworn:
guild.setNation(Guild.getErrantNation()); protectorate.setNation(Guild.getErrantNation());
GuildManager.updateAllGuildTags(guild); GuildManager.updateAllGuildTags(protectorate);
GuildManager.updateAllGuildBinds(guild, null); GuildManager.updateAllGuildBinds(protectorate, null);
guild.guildState = mbEnums.GuildState.Errant; protectorate.guildState = mbEnums.GuildState.Errant;
break; break;
case Province: case Province:
case Protectorate: case Protectorate:
guild.setNation(guild); protectorate.setNation(protectorate);
GuildManager.updateAllGuildTags(guild); GuildManager.updateAllGuildTags(protectorate);
GuildManager.updateAllGuildBinds(guild, guild.getOwnedCity()); GuildManager.updateAllGuildBinds(protectorate, protectorate.getOwnedCity());
boolean isNation = false; boolean isNation = false;
for (Guild subGuild : guild.getSubGuildList()) for (Guild subGuild : protectorate.getSubGuildList())
if (subGuild.getOwnedCity() != null) if (subGuild.getOwnedCity() != null)
isNation = true; isNation = true;
if (isNation) if (isNation)
guild.guildState = mbEnums.GuildState.Nation; protectorate.guildState = mbEnums.GuildState.Nation;
else else
guild.guildState = mbEnums.GuildState.Sovereign; protectorate.guildState = mbEnums.GuildState.Sovereign;
break; break;
} }
@@ -112,16 +112,16 @@ public class BreakFealtyHandler extends AbstractClientMsgHandler {
City.lastCityUpdate = System.currentTimeMillis(); City.lastCityUpdate = System.currentTimeMillis();
ArrayList<PlayerCharacter> guildMembers = SessionManager.getActivePCsInGuildID(guild.getObjectUUID()); ArrayList<PlayerCharacter> guildMembers = SessionManager.getActivePCsInGuildID(protectorate.getObjectUUID());
for (PlayerCharacter member : guildMembers) { for (PlayerCharacter member : guildMembers) {
ChatManager.chatGuildInfo(member, guild.getName() + " has broke fealty from " + toBreak.getName() + '!'); ChatManager.chatGuildInfo(member, protectorate.getName() + " has broke fealty from " + nation.getName() + '!');
} }
ArrayList<PlayerCharacter> breakFealtyMembers = SessionManager.getActivePCsInGuildID(toBreak.getObjectUUID()); ArrayList<PlayerCharacter> breakFealtyMembers = SessionManager.getActivePCsInGuildID(nation.getObjectUUID());
for (PlayerCharacter member : breakFealtyMembers) { for (PlayerCharacter member : breakFealtyMembers) {
ChatManager.chatGuildInfo(member, guild.getName() + " has broken fealty from " + toBreak.getName() + '!'); ChatManager.chatGuildInfo(member, protectorate.getName() + " has broken fealty from " + nation.getName() + '!');
} }
return true; return true;
@@ -129,44 +129,40 @@ public class BreakFealtyHandler extends AbstractClientMsgHandler {
} }
if (!toBreak.getSubGuildList().contains(guild)) { if (!nation.getSubGuildList().contains(protectorate)) {
ErrorPopupMsg.sendErrorMsg(player, "Failure to break fealty!"); ErrorPopupMsg.sendErrorMsg(player, "Failure to break fealty!");
return true; return true;
} }
if (GuildStatusController.isGuildLeader(player.getGuildStatus()) == false) { if (!GuildStatusController.isGuildLeader(player.getGuildStatus())) {
ErrorPopupMsg.sendErrorMsg(player, "Only guild leader can break fealty!"); ErrorPopupMsg.sendErrorMsg(player, "Only guild leader can break fealty!");
return true; return true;
} }
if (Bane.getBaneByAttackerGuild(guild) != null) { if (Bane.getBaneByAttackerGuild(protectorate) != null) {
ErrorPopupMsg.sendErrorMsg(player, "You may break fealty with active bane!"); ErrorPopupMsg.sendErrorMsg(player, "You may break fealty with active bane!");
return true; return true;
} }
if (!DbManager.GuildQueries.UPDATE_PARENT(guild.getObjectUUID(), WorldServer.worldUUID)) { if (!DbManager.GuildQueries.UPDATE_PARENT(protectorate.getObjectUUID(), WorldServer.worldUUID)) {
ErrorPopupMsg.sendErrorMsg(player, "A Serious error has occurred. Please post details for to ensure transaction integrity"); ErrorPopupMsg.sendErrorMsg(player, "A Serious error has occurred. Please post details for to ensure transaction integrity");
return true; return true;
} }
switch (guild.guildState) { switch (protectorate.guildState) {
case Sworn: case Sworn:
guild.setNation(null); protectorate.setNation(null);
GuildManager.updateAllGuildTags(guild); GuildManager.updateAllGuildTags(protectorate);
GuildManager.updateAllGuildBinds(guild, null); GuildManager.updateAllGuildBinds(protectorate, null);
break; break;
case Province: case Province:
guild.setNation(guild); protectorate.setNation(protectorate);
GuildManager.updateAllGuildTags(guild); GuildManager.updateAllGuildTags(protectorate);
GuildManager.updateAllGuildBinds(guild, guild.getOwnedCity()); GuildManager.updateAllGuildBinds(protectorate, protectorate.getOwnedCity());
break; break;
} }
guild.downgradeGuildState(); nation.getSubGuildList().remove(protectorate);
toBreak.getSubGuildList().remove(guild);
if (toBreak.getSubGuildList().isEmpty())
toBreak.downgradeGuildState();
SendGuildEntryMsg msg = new SendGuildEntryMsg(player); SendGuildEntryMsg msg = new SendGuildEntryMsg(player);
dispatch = Dispatch.borrow(player, msg); dispatch = Dispatch.borrow(player, msg);
@@ -178,17 +174,16 @@ public class BreakFealtyHandler extends AbstractClientMsgHandler {
City.lastCityUpdate = System.currentTimeMillis(); City.lastCityUpdate = System.currentTimeMillis();
ArrayList<PlayerCharacter> guildMembers = SessionManager.getActivePCsInGuildID(protectorate.getObjectUUID());
ArrayList<PlayerCharacter> guildMembers = SessionManager.getActivePCsInGuildID(guild.getObjectUUID());
for (PlayerCharacter member : guildMembers) { for (PlayerCharacter member : guildMembers) {
ChatManager.chatGuildInfo(member, guild.getName() + " has broke fealty from " + toBreak.getName() + '!'); ChatManager.chatGuildInfo(member, protectorate.getName() + " has broke fealty from " + nation.getName() + '!');
} }
ArrayList<PlayerCharacter> breakFealtyMembers = SessionManager.getActivePCsInGuildID(toBreak.getObjectUUID()); ArrayList<PlayerCharacter> breakFealtyMembers = SessionManager.getActivePCsInGuildID(nation.getObjectUUID());
for (PlayerCharacter member : breakFealtyMembers) { for (PlayerCharacter member : breakFealtyMembers) {
ChatManager.chatGuildInfo(member, guild.getName() + " has broken fealty from " + toBreak.getName() + '!'); ChatManager.chatGuildInfo(member, protectorate.getName() + " has broken fealty from " + nation.getName() + '!');
} }
return true; return true;