create PlayerManager static class

This commit is contained in:
2025-01-05 20:47:33 -06:00
parent 76eed79b0a
commit 450ae2ec82
87 changed files with 2730 additions and 2853 deletions
+6 -5
View File
@@ -12,6 +12,7 @@ package engine.net.client.msg;
import engine.Enum;
import engine.gameManager.ChatManager;
import engine.gameManager.DbManager;
import engine.gameManager.PlayerManager;
import engine.net.*;
import engine.net.client.ClientConnection;
import engine.net.client.Protocol;
@@ -381,23 +382,23 @@ public class ApplyRuneMsg extends ClientNetMsg {
//add any additional stats to match old amount
int dif = strTotal - (int) playerCharacter.statStrBase;
if (dif > 0 && strTotal < (int) playerCharacter.statStrMax) {
playerCharacter.addStr(dif);
PlayerManager.addStr(playerCharacter, dif);
}
dif = dexTotal - (int) playerCharacter.statDexBase;
if (dif > 0 && dexTotal < (int) playerCharacter.statDexMax) {
playerCharacter.addDex(dif);
PlayerManager.addDex(playerCharacter, dif);
}
dif = conTotal - (int) playerCharacter.statConBase;
if (dif > 0 && conTotal < (int) playerCharacter.statConMax) {
playerCharacter.addCon(dif);
PlayerManager.addCon(playerCharacter, dif);
}
dif = intTotal - (int) playerCharacter.statIntBase;
if (dif > 0 && intTotal < (int) playerCharacter.statIntMax) {
playerCharacter.addInt(dif);
PlayerManager.addInt(playerCharacter, dif);
}
dif = spiTotal - (int) playerCharacter.statSpiBase;
if (dif > 0 && spiTotal < (int) playerCharacter.statSpiMax) {
playerCharacter.addSpi(dif);
PlayerManager.addSpi(playerCharacter, dif);
}
// recalculate all bonuses/formulas/skills/powers
playerCharacter.recalculate();
@@ -13,6 +13,7 @@ import engine.Enum.GameObjectType;
import engine.Enum.TransactionType;
import engine.exception.SerializationException;
import engine.gameManager.BuildingManager;
import engine.gameManager.PlayerManager;
import engine.net.AbstractConnection;
import engine.net.ByteBufferReader;
import engine.net.ByteBufferWriter;
@@ -102,7 +103,7 @@ public class ArcViewAssetTransactionsMsg extends ClientNetMsg {
break;
case PlayerCharacter:
PlayerCharacter pc = PlayerCharacter.getPlayerCharacter(transaction.getTargetUUID());
PlayerCharacter pc = PlayerManager.getPlayerCharacter(transaction.getTargetUUID());
if (pc != null)
name = pc.getCombinedName();
break;
@@ -11,6 +11,7 @@ package engine.net.client.msg;
import engine.Enum.ItemType;
import engine.exception.SerializationException;
import engine.gameManager.PlayerManager;
import engine.net.AbstractConnection;
import engine.net.AbstractNetMsg;
import engine.net.ByteBufferReader;
@@ -100,7 +101,7 @@ public class BuyFromNPCWindowMsg extends ClientNetMsg {
man = npc.getCharItemManager();
Contract contract = npc.getContract();
if (player != null) {
float barget = player.getBargain();
float barget = PlayerManager.getBargain(player);
float profit = npc.getSellPercent(player) - barget;
if (profit < 1)
+4 -3
View File
@@ -12,6 +12,7 @@ package engine.net.client.msg;
import engine.gameManager.ChatManager;
import engine.gameManager.DbManager;
import engine.gameManager.PlayerManager;
import engine.gameManager.SessionManager;
import engine.net.AbstractConnection;
import engine.net.ByteBufferReader;
@@ -81,7 +82,7 @@ public class IgnoreMsg extends ClientNetMsg {
}
//FIX THIS, USE OUR CACHE!
PlayerCharacter pcToIgnore = PlayerCharacter.getByFirstName(nameToIgnore);
PlayerCharacter pcToIgnore = PlayerManager.getByFirstName(nameToIgnore);
if (pcSource == null) {
return;
@@ -114,11 +115,11 @@ public class IgnoreMsg extends ClientNetMsg {
pcSource.removeIgnoredPlayer(pcToIgnore.getAccount());
ChatManager.chatSystemInfo(pcSource, "Character " + fn + " is no longer ignored.");
} else {
if (!PlayerCharacter.isIgnorable()) {
if (!PlayerManager.isIgnorable()) {
ChatManager.chatSystemError(pcSource, "This character cannot be ignored.");
return;
}
if (PlayerCharacter.isIgnoreListFull()) {
if (PlayerManager.isIgnoreListFull()) {
ChatManager.chatSystemError(pcSource, "Your ignore list is already full.");
return;
}
@@ -11,6 +11,7 @@ package engine.net.client.msg;
import engine.Enum.GameObjectType;
import engine.gameManager.DbManager;
import engine.gameManager.PlayerManager;
import engine.net.AbstractConnection;
import engine.net.ByteBufferReader;
import engine.net.ByteBufferWriter;
@@ -619,7 +620,7 @@ public class OpenFriendsCondemnListMsg extends ClientNetMsg {
writer.putInt(listSize);
for (BuildingFriends friend : this.friends.values()) {
pc = PlayerCharacter.getFromCache(friend.getPlayerUID());
pc = PlayerManager.getFromCache(friend.getPlayerUID());
guild = Guild.getGuild(friend.getGuildUID());
if (friend.getFriendType() == 7) {
if (pc != null)
@@ -718,7 +719,7 @@ public class OpenFriendsCondemnListMsg extends ClientNetMsg {
AbstractCharacter heraldryCharacter = null;
int characterType = heraldryMap.get(characterID);
if (characterType == GameObjectType.PlayerCharacter.ordinal())
heraldryCharacter = PlayerCharacter.getFromCache(characterID);
heraldryCharacter = PlayerManager.getFromCache(characterID);
else if (characterType == GameObjectType.NPC.ordinal())
heraldryCharacter = NPC.getFromCache(characterID);
else if (characterType == GameObjectType.Mob.ordinal())
+6 -5
View File
@@ -10,6 +10,7 @@
package engine.net.client.msg;
import engine.gameManager.PlayerManager;
import engine.gameManager.SessionManager;
import engine.net.*;
import engine.net.client.ClientConnection;
@@ -160,15 +161,15 @@ public class RefineMsg extends ClientNetMsg {
private static boolean refineStat(ClientConnection origin, PlayerCharacter pc, int token, RefineMsg msg) {
if (token == MBServerStatics.STAT_STR_ID)
return pc.refineStr();
return PlayerManager.refineStr(pc);
if (token == MBServerStatics.STAT_DEX_ID)
return pc.refineDex();
return PlayerManager.refineDex(pc);
if (token == MBServerStatics.STAT_CON_ID)
return pc.refineCon();
return PlayerManager.refineCon(pc);
if (token == MBServerStatics.STAT_INT_ID)
return pc.refineInt(msg);
return PlayerManager.refineInt(pc, msg);
if (token == MBServerStatics.STAT_SPI_ID)
return pc.refineSpi();
return PlayerManager.refineSpi(pc);
return false;
}
@@ -11,6 +11,7 @@ package engine.net.client.msg;
import engine.exception.SerializationException;
import engine.gameManager.PlayerManager;
import engine.net.AbstractConnection;
import engine.net.AbstractNetMsg;
import engine.net.ByteBufferReader;
@@ -90,7 +91,7 @@ public class SendOwnPlayerMsg extends ClientNetMsg {
}
writer.putVector3f(ch.getLoc());
try {
PlayerCharacter.serializeForClientMsgFull(this.ch, writer);
PlayerManager.serializeForClientMsgFull(this.ch, writer);
} catch (SerializationException e) {
Logger.error(e);
}
@@ -11,6 +11,7 @@ package engine.net.client.msg;
import engine.exception.SerializationException;
import engine.gameManager.PlayerManager;
import engine.net.AbstractConnection;
import engine.net.ByteBufferReader;
import engine.net.ByteBufferWriter;
@@ -64,7 +65,7 @@ public class TerritoryChangeMessage extends ClientNetMsg {
writer.putString(realm.getRealmName());
if (this.realmOwner != null) {
writer.putString(this.realmOwner.getCombinedName());
writer.putInt(PlayerCharacter.GetPlayerRealmTitle(this.realmOwner));
writer.putInt(PlayerManager.GetPlayerRealmTitle(this.realmOwner));
writer.putInt(1);
writer.put((byte) 1);
writer.put((byte) 1);
@@ -10,6 +10,7 @@
package engine.net.client.msg;
import engine.Enum.GameObjectType;
import engine.gameManager.PlayerManager;
import engine.net.AbstractConnection;
import engine.net.AbstractNetMsg;
import engine.net.ByteBufferReader;
@@ -89,7 +90,7 @@ public class TrackWindowMsg extends ClientNetMsg {
for (int i = 0; i < size; i++) {
int objectType = reader.getInt();
int objectID = reader.getInt();
this.source = PlayerCharacter.getFromCache(objectID);
this.source = PlayerManager.getFromCache(objectID);
reader.getString(); //name
reader.get(); //always 00?
reader.getInt(); //guildObjectType
@@ -106,7 +107,7 @@ public class TrackWindowMsg extends ClientNetMsg {
//Get the Character from it's Object Type and ID
AbstractCharacter ac = null;
if (objectType == GameObjectType.PlayerCharacter.ordinal())
ac = PlayerCharacter.getFromCache(objectID);
ac = PlayerManager.getFromCache(objectID);
else if (objectType == GameObjectType.NPC.ordinal())
ac = NPC.getFromCache(objectID);
else if (objectType == GameObjectType.Mob.ordinal())
@@ -12,10 +12,7 @@ package engine.net.client.msg;
import engine.Enum.DispatchChannel;
import engine.Enum.GuildHistoryType;
import engine.exception.MsgSendException;
import engine.gameManager.BuildingManager;
import engine.gameManager.DbManager;
import engine.gameManager.GuildManager;
import engine.gameManager.SessionManager;
import engine.gameManager.*;
import engine.math.Vector3fImmutable;
import engine.net.*;
import engine.net.client.ClientConnection;
@@ -437,7 +434,7 @@ public class VendorDialogMsg extends ClientNetMsg {
if (level >= minLevel && level <= maxLevel) {
if (useSquare)
loc = getSquare(loc);
pc.teleport(loc);
PlayerManager.teleport(pc, loc);
pc.setSafeMode();
// PowersManager.applyPower(pc, pc, new Vector3f(0f,
// 0f, 0f), -1661758934, 40, false);
@@ -463,7 +460,7 @@ public class VendorDialogMsg extends ClientNetMsg {
// teleport player
if (useSquare)
loc = getSquare(loc);
pc.teleport(loc);
PlayerManager.teleport(pc, loc);
pc.setSafeMode();
// PowersManager.applyPower(pc, pc, new
// Vector3f(0f, 0f, 0f), -1661758934, 40, false);
@@ -471,10 +468,10 @@ public class VendorDialogMsg extends ClientNetMsg {
// join guild
GuildManager.joinGuild(pc, guild, GuildHistoryType.JOIN);
pc.resetGuildStatuses();
PlayerManager.resetGuildStatuses(pc);
if (guild.isNPCGuild())
pc.setFullMember(true);
PlayerManager.setFullMember(pc, true);
if (useSquare)
loc = loc.add(30, 0, 0);
@@ -483,7 +480,7 @@ public class VendorDialogMsg extends ClientNetMsg {
// guild not found, just teleport
if (useSquare)
loc = getSquare(loc);
pc.teleport(loc);
PlayerManager.teleport(pc, loc);
pc.setSafeMode();
// PowersManager.applyPower(pc, pc, new
// Vector3f(0f, 0f, 0f), -1661758934, 50, false);
@@ -10,6 +10,7 @@
package engine.net.client.msg;
import engine.Enum;
import engine.gameManager.PlayerManager;
import engine.gameManager.SessionManager;
import engine.net.*;
import engine.net.client.ClientConnection;
@@ -233,8 +234,8 @@ public class WhoResponseMsg extends ClientNetMsg {
writer.putInt(pc.getObjectUUID());
writer.putString(pc.getFirstName());
writer.putString(pc.getLastName());
writer.putInt(pc.getRaceToken());
writer.putInt(pc.getClassToken());
writer.putInt(PlayerManager.getRaceToken(pc));
writer.putInt(PlayerManager.getClassToken(pc));
writer.putInt(pc.getLevel());
writer.putInt(0); // unknown 0
writer.putInt(pc.isMale() ? 1 : 2); //gender?
@@ -11,6 +11,7 @@ package engine.net.client.msg.guild;
import engine.Enum.GameObjectType;
import engine.gameManager.PlayerManager;
import engine.net.AbstractConnection;
import engine.net.ByteBufferReader;
import engine.net.ByteBufferWriter;
@@ -193,7 +194,7 @@ class GuildInfoMessageType2 extends GuildInfoMessageType {
writer.putString(g.getName());
if (this.objectType == GameObjectType.PlayerCharacter.ordinal()) {
PlayerCharacter pc = PlayerCharacter.getFromCache(this.objectID);
PlayerCharacter pc = PlayerManager.getFromCache(this.objectID);
if (pc != null) {
writer.putInt(GuildStatusController.getRank(pc.getGuildStatus()));
@@ -254,7 +255,7 @@ class GuildInfoMessageType4 extends GuildInfoMessageType {
writer.putInt(0);
writer.putInt(0);
writer.putInt(0);
PlayerCharacter pc = PlayerCharacter.getFromCache(this.objectID);
PlayerCharacter pc = PlayerManager.getFromCache(this.objectID);
if (this.g == null || pc == null) {
writer.putInt(0);
writer.putInt(0);
@@ -298,7 +299,7 @@ class GuildInfoMessageType4 extends GuildInfoMessageType {
if (guildLeader != null)
guildLeaderName = guildLeader.getName();
} else {
guildLeader = PlayerCharacter.getFromCache(g.getGuildLeaderUUID());
guildLeader = PlayerManager.getFromCache(g.getGuildLeaderUUID());
if (guildLeader != null)
guildLeaderName = ((PlayerCharacter) guildLeader).getCombinedName();
}
@@ -11,6 +11,7 @@ package engine.net.client.msg.guild;
import engine.Enum;
import engine.Enum.GameObjectType;
import engine.gameManager.PlayerManager;
import engine.gameManager.SessionManager;
import engine.net.AbstractConnection;
import engine.net.ByteBufferReader;
@@ -204,7 +205,7 @@ class GuildListMessageType2 extends GuildListMessageType {
writer.putInt(GuildStatusController.getTitle(pc.getGuildStatus())); //Title Maybe?
writer.putInt(GuildStatusController.getRank(pc.getGuildStatus())); //Rank?
writer.putInt(pc.getRaceToken()); //race token
writer.putInt(PlayerManager.getRaceToken(pc)); //race token
writer.putInt(pc.getBaseClassToken()); //class token
writer.putInt(2); //PAD
@@ -11,6 +11,7 @@ package engine.net.client.msg.login;
import engine.exception.SerializationException;
import engine.gameManager.PlayerManager;
import engine.net.AbstractConnection;
import engine.net.AbstractNetMsg;
import engine.net.ByteBufferReader;
@@ -162,9 +163,9 @@ public class CharSelectScreenMsg extends ClientNetMsg {
for (int i = 0; i < this.numChars; ++i) {
try {
if (!fromCommit)
PlayerCharacter.serializeForClientMsgLogin(this.chars.get(i), writer);
PlayerManager.serializeForClientMsgLogin(this.chars.get(i), writer);
else
PlayerCharacter.serializeForClientMsgCommit(this.chars.get(i), writer);
PlayerManager.serializeForClientMsgCommit(this.chars.get(i), writer);
} catch (SerializationException e) {
Logger.error("failed to serialize character " + this.chars.get(i).getObjectUUID());
// Handled already.