Charter template id is stored not ordinal

This commit is contained in:
2024-04-28 14:18:13 -04:00
parent 4f20cc9aba
commit 3c4d8239db
12 changed files with 25 additions and 30 deletions
+1 -1
View File
@@ -89,7 +89,7 @@ public class GuildRecord extends DataRecord {
guildRecord.guildHash = guildRecord.guild.getHash(); guildRecord.guildHash = guildRecord.guild.getHash();
guildRecord.guildID = guildRecord.guild.getObjectUUID(); guildRecord.guildID = guildRecord.guild.getObjectUUID();
guildRecord.guildName = guildRecord.guild.getName(); guildRecord.guildName = guildRecord.guild.getName();
mbEnums.GuildCharterType guildCharterType = mbEnums.GuildCharterType.getGuildTypeFromInt(guildRecord.guild.getCharter()); mbEnums.GuildCharterType guildCharterType = guild.charter;
guildRecord.charterName = guildCharterType.name; guildRecord.charterName = guildCharterType.name;
guildRecord.GLHash = DataWarehouse.hasher.encrypt(guildRecord.guild.getGuildLeaderUUID()); guildRecord.GLHash = DataWarehouse.hasher.encrypt(guildRecord.guild.getGuildLeaderUUID());
+2 -2
View File
@@ -427,7 +427,7 @@ public class dbGuildHandler extends dbHandlerBase {
preparedStatement.setInt(6, guildTag.symbolColor); preparedStatement.setInt(6, guildTag.symbolColor);
preparedStatement.setInt(7, guildTag.backgroundDesign); preparedStatement.setInt(7, guildTag.backgroundDesign);
preparedStatement.setInt(8, guildTag.symbol); preparedStatement.setInt(8, guildTag.symbol);
preparedStatement.setInt(9, g.getCharter()); preparedStatement.setInt(9, g.charter.templateID);
preparedStatement.setString(10, g.getLeadershipType()); preparedStatement.setString(10, g.getLeadershipType());
preparedStatement.setString(11, g.getMotto()); preparedStatement.setString(11, g.getMotto());
@@ -573,7 +573,7 @@ public class dbGuildHandler extends dbHandlerBase {
preparedStatement.setInt(4, g.getGuildTag().symbolColor); preparedStatement.setInt(4, g.getGuildTag().symbolColor);
preparedStatement.setInt(5, g.getGuildTag().backgroundDesign); preparedStatement.setInt(5, g.getGuildTag().backgroundDesign);
preparedStatement.setInt(6, g.getGuildTag().symbol); preparedStatement.setInt(6, g.getGuildTag().symbol);
preparedStatement.setInt(7, g.getCharter()); preparedStatement.setInt(7, g.charter.templateID);
preparedStatement.setString(8, g.getMOTD()); preparedStatement.setString(8, g.getMOTD());
preparedStatement.setString(9, g.getICMOTD()); preparedStatement.setString(9, g.getICMOTD());
preparedStatement.setString(10, ""); preparedStatement.setString(10, "");
+3 -3
View File
@@ -339,8 +339,8 @@ public enum ChatManager {
chatGuildMsg.setSourceID(sender.getObjectUUID()); chatGuildMsg.setSourceID(sender.getObjectUUID());
chatGuildMsg.setSourceName(sender.getFirstName()); chatGuildMsg.setSourceName(sender.getFirstName());
chatGuildMsg.setUnknown03(WorldServer.worldMapID); // Server ID chatGuildMsg.setUnknown03(WorldServer.worldMapID); // Server ID
chatGuildMsg.setUnknown04(sender.getGuild() != null ? sender.getGuild() Guild guild1 = sender.getGuild();
.getCharter() : 0); // Charter? chatGuildMsg.setUnknown04(sender.getGuild() != null ? guild1.charter.ordinal() : 0); // Charter?
chatGuildMsg.setUnknown05(GuildStatusController.getTitle(sender.getGuildStatus())); // Title? chatGuildMsg.setUnknown05(GuildStatusController.getTitle(sender.getGuildStatus())); // Title?
chatGuildMsg.setUnknown06(sender.race.getRaceType().getCharacterSex().equals(mbEnums.CharacterSex.MALE) ? 1 : 2); // isMale?, seen 1 and 2 chatGuildMsg.setUnknown06(sender.race.getRaceType().getCharacterSex().equals(mbEnums.CharacterSex.MALE) ? 1 : 2); // isMale?, seen 1 and 2
@@ -490,7 +490,7 @@ public enum ChatManager {
msg.setName(sender.getFirstName()); msg.setName(sender.getFirstName());
msg.setGuildTitle(GuildStatusController.getTitle(sender.getGuildStatus())); msg.setGuildTitle(GuildStatusController.getTitle(sender.getGuildStatus()));
msg.setGuildUUID(guild.getObjectUUID()); msg.setGuildUUID(guild.getObjectUUID());
msg.setCharter(guild.getCharter()); msg.setCharter(guild.charter.ordinal());
// Send dispatch to each player // Send dispatch to each player
@@ -67,18 +67,13 @@ public class ChangeGuildLeaderHandler extends AbstractClientMsgHandler {
if (!Guild.sameGuild(sourcePlayer.getGuild(), targetPlayer.getGuild())) if (!Guild.sameGuild(sourcePlayer.getGuild(), targetPlayer.getGuild()))
return false; return false;
//updateSource will generate a new promote/demote screen for sourcePlayer //updateSource will generate a new promote/demote screen for sourcePlayer
//updateTarget will sync guild info for the target and all players in range //updateTarget will sync guild info for the target and all players in range
String targetName = null; String targetName = null;
boolean isMale = true; boolean isMale = true;
boolean updateTarget; boolean updateTarget;
mbEnums.GuildCharterType t = mbEnums.GuildCharterType.getGuildTypeFromInt(sourcePlayer.getGuild().getCharter());
if (!DbManager.GuildQueries.SET_GUILD_LEADER(targetPlayer.getObjectUUID(), glGuild.getObjectUUID())) { if (!DbManager.GuildQueries.SET_GUILD_LEADER(targetPlayer.getObjectUUID(), glGuild.getObjectUUID())) {
ChatManager.chatGuildError(sourcePlayer, "Failed to change guild leader!"); ChatManager.chatGuildError(sourcePlayer, "Failed to change guild leader!");
return false; return false;
@@ -21,6 +21,7 @@ import engine.net.client.msg.ClientNetMsg;
import engine.net.client.msg.guild.ChangeRankMsg; import engine.net.client.msg.guild.ChangeRankMsg;
import engine.net.client.msg.guild.GuildInfoMsg; import engine.net.client.msg.guild.GuildInfoMsg;
import engine.net.client.msg.guild.GuildListMsg; import engine.net.client.msg.guild.GuildListMsg;
import engine.objects.Guild;
import engine.objects.GuildStatusController; import engine.objects.GuildStatusController;
import engine.objects.PlayerCharacter; import engine.objects.PlayerCharacter;
@@ -60,7 +61,8 @@ public class ChangeRankHandler extends AbstractClientMsgHandler {
boolean isMale; boolean isMale;
if (msg.getPreviousRank() != msg.getNewRank()) { if (msg.getPreviousRank() != msg.getNewRank()) {
mbEnums.GuildCharterType t = mbEnums.GuildCharterType.getGuildTypeFromInt(sourcePlayer.getGuild().getCharter()); Guild guild = sourcePlayer.getGuild();
mbEnums.GuildCharterType t = mbEnums.GuildCharterType.getGuildTypeFromInt(guild.charter.ordinal());
if (targetPlayer != null) { if (targetPlayer != null) {
targetPlayer.setGuildTitle(msg.getNewRank()); targetPlayer.setGuildTitle(msg.getNewRank());
@@ -96,7 +96,7 @@ public class GuildCreationFinalizeHandler extends AbstractClientMsgHandler {
int leadershipType = ((msg.getICVoteFlag() << 1) | msg.getMemberVoteFlag()); int leadershipType = ((msg.getICVoteFlag() << 1) | msg.getMemberVoteFlag());
newGuild = new Guild(msg.getName(), null, charterType.ordinal(), newGuild = new Guild(msg.getName(), null, charterType,
charterType.getLeadershipType(leadershipType), msg.getGuildTag(), charterType.getLeadershipType(leadershipType), msg.getGuildTag(),
StringUtils.truncate(msg.getMotto(), 120)); StringUtils.truncate(msg.getMotto(), 120));
@@ -23,6 +23,7 @@ import engine.net.client.ClientConnection;
import engine.net.client.msg.ClientNetMsg; import engine.net.client.msg.ClientNetMsg;
import engine.net.client.msg.ErrorPopupMsg; import engine.net.client.msg.ErrorPopupMsg;
import engine.net.client.msg.guild.InviteToGuildMsg; import engine.net.client.msg.guild.InviteToGuildMsg;
import engine.objects.Guild;
import engine.objects.GuildStatusController; import engine.objects.GuildStatusController;
import engine.objects.PlayerCharacter; import engine.objects.PlayerCharacter;
@@ -85,7 +86,8 @@ public class InviteToGuildHandler extends AbstractClientMsgHandler {
return true; return true;
} }
mbEnums.GuildCharterType guildCharterType = mbEnums.GuildCharterType.values()[sourcePlayer.getGuild().getCharter()]; Guild guild = sourcePlayer.getGuild();
mbEnums.GuildCharterType guildCharterType = guild.charter;
if (guildCharterType == null) { if (guildCharterType == null) {
ErrorPopupMsg.sendErrorPopup(sourcePlayer, GuildManager.NO_CHARTER_FOUND); ErrorPopupMsg.sendErrorPopup(sourcePlayer, GuildManager.NO_CHARTER_FOUND);
@@ -243,7 +243,7 @@ public class WhoResponseMsg extends ClientNetMsg {
writer.put((byte) 1); // Send Guild Info writer.put((byte) 1); // Send Guild Info
writer.put((byte) 1); // SkipPartTwo writer.put((byte) 1); // SkipPartTwo
writer.putString(guild.getName()); writer.putString(guild.getName());
writer.putInt(guild.getCharter()); // Charter Type writer.putInt(guild.charter.ordinal()); // Charter Type
writer.putInt(GuildStatusController.getTitle(pc.getGuildStatus())); writer.putInt(GuildStatusController.getTitle(pc.getGuildStatus()));
writer.putString("what"); // City?, Skip if SkipPartTwo = 0x00 writer.putString("what"); // City?, Skip if SkipPartTwo = 0x00
} else { } else {
@@ -289,7 +289,7 @@ class GuildInfoMessageType4 extends GuildInfoMessageType {
writer.putString(nation.getName()); writer.putString(nation.getName());
writer.putInt(GuildStatusController.getRank(pc.getGuildStatus())); writer.putInt(GuildStatusController.getRank(pc.getGuildStatus()));
writer.putInt(GuildStatusController.getTitle(pc.getGuildStatus())); writer.putInt(GuildStatusController.getTitle(pc.getGuildStatus()));
writer.putInt(g.getCharter()); writer.putInt(g.charter.ordinal());
writer.putString(cityName); //Shows City Name FUCK writer.putString(cityName); //Shows City Name FUCK
AbstractCharacter guildLeader; AbstractCharacter guildLeader;
String guildLeaderName = ""; String guildLeaderName = "";
@@ -392,7 +392,7 @@ class GuildInfoMessageType5 extends GuildInfoMessageType {
writer.putInt(GuildStatusController.getRank(pc.getGuildStatus())); //Rank writer.putInt(GuildStatusController.getRank(pc.getGuildStatus())); //Rank
writer.putInt(GuildStatusController.getTitle(pc.getGuildStatus())); //Title writer.putInt(GuildStatusController.getTitle(pc.getGuildStatus())); //Title
writer.putInt(g.getCharter()); writer.putInt(g.charter.ordinal());
if (g.getNation().equals(Guild.getErrantNation())) if (g.getNation().equals(Guild.getErrantNation()))
writer.putString("Errant"); writer.putString("Errant");
@@ -125,7 +125,7 @@ class GuildListMessageType1 extends GuildListMessageType {
@Override @Override
void _serialize(ByteBufferWriter writer) { void _serialize(ByteBufferWriter writer) {
mbEnums.GuildCharterType gt = mbEnums.GuildCharterType.getGuildTypeFromInt(g.getCharter()); mbEnums.GuildCharterType gt = g.charter;
writer.putInt(1); writer.putInt(1);
writer.putInt(gt.ordinal()); //Charter Type writer.putInt(gt.ordinal()); //Charter Type
@@ -209,7 +209,7 @@ class GuildListMessageType2 extends GuildListMessageType {
writer.putInt(2); //PAD writer.putInt(2); //PAD
writer.putInt(pc.getLevel()); writer.putInt(pc.getLevel());
writer.putInt(g.getCharter()); writer.putInt(g.charter.ordinal());
//TODO Get Guild History from the DB //TODO Get Guild History from the DB
//ArrayList<GuildHistory> history = DbManager.GuildQueries.GET_GUILD_HISTORY_OF_PLAYER((int)pc.getPlayerUUID()); //ArrayList<GuildHistory> history = DbManager.GuildQueries.GET_GUILD_HISTORY_OF_PLAYER((int)pc.getPlayerUUID());
+1 -1
View File
@@ -205,7 +205,7 @@ public class City extends AbstractWorldObject {
else else
writer.putString(guildRuler.getFirstName() + ' ' + guildRuler.getLastName()); writer.putString(guildRuler.getFirstName() + ' ' + guildRuler.getLastName());
writer.putInt(rulingGuild.getCharter()); writer.putInt(rulingGuild.charter.ordinal());
writer.putInt(0); // always 00000000 writer.putInt(0); // always 00000000
writer.put(city.isSafeHold); writer.put(city.isSafeHold);
+6 -10
View File
@@ -38,7 +38,7 @@ public class Guild extends AbstractWorldObject {
private static Guild errantNation; private static Guild errantNation;
private final String name; private final String name;
private final GuildTag guildTag; private final GuildTag guildTag;
private final int charter; public final GuildCharterType charter;
private final String leadershipType; // Have to see how this is sent to the client private final String leadershipType; // Have to see how this is sent to the client
private final int repledgeMin; private final int repledgeMin;
private final int repledgeMax; private final int repledgeMax;
@@ -71,7 +71,7 @@ public class Guild extends AbstractWorldObject {
/** /**
* No Id Constructor * No Id Constructor
*/ */
public Guild(String name, Guild nat, int charter, public Guild(String name, Guild nat, GuildCharterType charter,
String leadershipType, GuildTag gt, String motto) { String leadershipType, GuildTag gt, String motto) {
super(); super();
this.name = name; this.name = name;
@@ -100,7 +100,7 @@ public class Guild extends AbstractWorldObject {
/** /**
* Normal Constructor * Normal Constructor
*/ */
public Guild(String name, Guild nat, int charter, public Guild(String name, Guild nat, GuildCharterType charter,
String leadershipType, GuildTag gt, int newUUID) { String leadershipType, GuildTag gt, int newUUID) {
super(newUUID); super(newUUID);
this.name = name; this.name = name;
@@ -134,7 +134,7 @@ public class Guild extends AbstractWorldObject {
DbObjectType objectType; DbObjectType objectType;
this.name = rs.getString("name"); this.name = rs.getString("name");
this.charter = rs.getInt("charter"); this.charter = GuildCharterType.templateLookup.get(rs.getInt("charter"));
this.leadershipType = rs.getString("leadershipType"); this.leadershipType = rs.getString("leadershipType");
this.guildTag = new GuildTag(rs.getInt("backgroundColor01"), this.guildTag = new GuildTag(rs.getInt("backgroundColor01"),
@@ -311,7 +311,7 @@ public class Guild extends AbstractWorldObject {
public static Guild getErrantGuild() { public static Guild getErrantGuild() {
if (Guild.errantGuild == null) if (Guild.errantGuild == null)
Guild.errantGuild = new Guild("None", Guild.getErrantNation(), 0, Guild.errantGuild = new Guild("None", Guild.getErrantNation(), GuildCharterType.NONE,
"Anarchy", GuildTag.ERRANT, 0); "Anarchy", GuildTag.ERRANT, 0);
return Guild.errantGuild; return Guild.errantGuild;
@@ -319,7 +319,7 @@ public class Guild extends AbstractWorldObject {
public static Guild getErrantNation() { public static Guild getErrantNation() {
if (Guild.errantNation == null) if (Guild.errantNation == null)
Guild.errantNation = new Guild("None", null, 10, "Despot Rule", GuildTag.ERRANT, 0); Guild.errantNation = new Guild("None", null, GuildCharterType.NONE, "Despot Rule", GuildTag.ERRANT, 0);
return Guild.errantNation; return Guild.errantNation;
} }
@@ -456,10 +456,6 @@ public class Guild extends AbstractWorldObject {
return this.guildTag; return this.guildTag;
} }
public int getCharter() {
return charter;
}
/* /*
* Utils * Utils
*/ */