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;
PlayerCharacter player;
Guild toBreak;
Guild guild;
Guild nation;
Guild protectorate;
Dispatch dispatch;
bfm = (BreakFealtyMsg) baseMsg;
@@ -49,55 +49,55 @@ public class BreakFealtyHandler extends AbstractClientMsgHandler {
if (player == null)
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");
return true;
}
guild = player.getGuild();
protectorate = player.getGuild();
if (guild == null) {
if (protectorate == null) {
ErrorPopupMsg.sendErrorMsg(player, "You do not belong to a guild!");
return true;
}
if (toBreak.isNPCGuild()) {
if (GuildStatusController.isGuildLeader(player.getGuildStatus()) == false) {
if (nation.isNPCGuild()) {
if (!GuildStatusController.isGuildLeader(player.getGuildStatus())) {
ErrorPopupMsg.sendErrorMsg(player, "Only guild leader can break fealty!");
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");
return true;
}
switch (guild.guildState) {
switch (protectorate.guildState) {
case Sworn:
guild.setNation(Guild.getErrantNation());
GuildManager.updateAllGuildTags(guild);
GuildManager.updateAllGuildBinds(guild, null);
guild.guildState = mbEnums.GuildState.Errant;
protectorate.setNation(Guild.getErrantNation());
GuildManager.updateAllGuildTags(protectorate);
GuildManager.updateAllGuildBinds(protectorate, null);
protectorate.guildState = mbEnums.GuildState.Errant;
break;
case Province:
case Protectorate:
guild.setNation(guild);
GuildManager.updateAllGuildTags(guild);
GuildManager.updateAllGuildBinds(guild, guild.getOwnedCity());
protectorate.setNation(protectorate);
GuildManager.updateAllGuildTags(protectorate);
GuildManager.updateAllGuildBinds(protectorate, protectorate.getOwnedCity());
boolean isNation = false;
for (Guild subGuild : guild.getSubGuildList())
for (Guild subGuild : protectorate.getSubGuildList())
if (subGuild.getOwnedCity() != null)
isNation = true;
if (isNation)
guild.guildState = mbEnums.GuildState.Nation;
protectorate.guildState = mbEnums.GuildState.Nation;
else
guild.guildState = mbEnums.GuildState.Sovereign;
protectorate.guildState = mbEnums.GuildState.Sovereign;
break;
}
@@ -112,16 +112,16 @@ public class BreakFealtyHandler extends AbstractClientMsgHandler {
City.lastCityUpdate = System.currentTimeMillis();
ArrayList<PlayerCharacter> guildMembers = SessionManager.getActivePCsInGuildID(guild.getObjectUUID());
ArrayList<PlayerCharacter> guildMembers = SessionManager.getActivePCsInGuildID(protectorate.getObjectUUID());
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) {
ChatManager.chatGuildInfo(member, guild.getName() + " has broken fealty from " + toBreak.getName() + '!');
ChatManager.chatGuildInfo(member, protectorate.getName() + " has broken fealty from " + nation.getName() + '!');
}
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!");
return true;
}
if (GuildStatusController.isGuildLeader(player.getGuildStatus()) == false) {
if (!GuildStatusController.isGuildLeader(player.getGuildStatus())) {
ErrorPopupMsg.sendErrorMsg(player, "Only guild leader can break fealty!");
return true;
}
if (Bane.getBaneByAttackerGuild(guild) != null) {
if (Bane.getBaneByAttackerGuild(protectorate) != null) {
ErrorPopupMsg.sendErrorMsg(player, "You may break fealty with active bane!");
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");
return true;
}
switch (guild.guildState) {
switch (protectorate.guildState) {
case Sworn:
guild.setNation(null);
GuildManager.updateAllGuildTags(guild);
GuildManager.updateAllGuildBinds(guild, null);
protectorate.setNation(null);
GuildManager.updateAllGuildTags(protectorate);
GuildManager.updateAllGuildBinds(protectorate, null);
break;
case Province:
guild.setNation(guild);
GuildManager.updateAllGuildTags(guild);
GuildManager.updateAllGuildBinds(guild, guild.getOwnedCity());
protectorate.setNation(protectorate);
GuildManager.updateAllGuildTags(protectorate);
GuildManager.updateAllGuildBinds(protectorate, protectorate.getOwnedCity());
break;
}
guild.downgradeGuildState();
toBreak.getSubGuildList().remove(guild);
if (toBreak.getSubGuildList().isEmpty())
toBreak.downgradeGuildState();
nation.getSubGuildList().remove(protectorate);
SendGuildEntryMsg msg = new SendGuildEntryMsg(player);
dispatch = Dispatch.borrow(player, msg);
@@ -178,17 +174,16 @@ public class BreakFealtyHandler extends AbstractClientMsgHandler {
City.lastCityUpdate = System.currentTimeMillis();
ArrayList<PlayerCharacter> guildMembers = SessionManager.getActivePCsInGuildID(guild.getObjectUUID());
ArrayList<PlayerCharacter> guildMembers = SessionManager.getActivePCsInGuildID(protectorate.getObjectUUID());
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) {
ChatManager.chatGuildInfo(member, guild.getName() + " has broken fealty from " + toBreak.getName() + '!');
ChatManager.chatGuildInfo(member, protectorate.getName() + " has broken fealty from " + nation.getName() + '!');
}
return true;