Remove AddWorld,AddChannel,RemoveWorld,RemoveChannel cmds

These are incredibly error prone and hinder the database migration work.
This commit is contained in:
P0nk
2024-09-29 07:08:45 +02:00
parent 5595f5763b
commit 813768ec47
9 changed files with 0 additions and 590 deletions

View File

@@ -358,82 +358,6 @@ public class Server {
}
}
private void dumpData() {
wldRLock.lock();
try {
log.debug("Worlds: {}", worlds);
log.debug("Channels: {}", channels);
log.debug("World recommended list: {}", worldRecommendedList);
log.debug("---------------------");
} finally {
wldRLock.unlock();
}
}
public int addChannel(int worldid) {
World world;
Map<Integer, String> channelInfo;
int channelid;
wldRLock.lock();
try {
if (worldid >= worlds.size()) {
return -3;
}
channelInfo = channels.get(worldid);
if (channelInfo == null) {
return -3;
}
channelid = channelInfo.size();
if (channelid >= YamlConfig.config.server.CHANNEL_SIZE) {
return -2;
}
channelid++;
world = this.getWorld(worldid);
} finally {
wldRLock.unlock();
}
Channel channel = new Channel(worldid, channelid, getCurrentTime(), channelDependencies);
channel.setServerMessage(YamlConfig.config.worlds.get(worldid).why_am_i_recommended);
if (world.addChannel(channel)) {
wldWLock.lock();
try {
channelInfo.put(channelid, channel.getIP());
} finally {
wldWLock.unlock();
}
}
return channelid;
}
public int addWorld() {
int newWorld = initWorld();
if (newWorld > -1) {
installWorldPlayerRanking(newWorld);
Set<Integer> accounts;
lgnRLock.lock();
try {
accounts = new HashSet<>(accountChars.keySet());
} finally {
lgnRLock.unlock();
}
for (Integer accId : accounts) {
loadAccountCharactersView(accId, 0, newWorld);
}
}
return newWorld;
}
private int initWorld() {
int i;
@@ -501,74 +425,6 @@ public class Server {
}
}
public boolean removeChannel(int worldid) { //lol don't!
World world;
wldRLock.lock();
try {
if (worldid >= worlds.size()) {
return false;
}
world = worlds.get(worldid);
} finally {
wldRLock.unlock();
}
if (world != null) {
int channel = world.removeChannel();
wldWLock.lock();
try {
Map<Integer, String> m = channels.get(worldid);
if (m != null) {
m.remove(channel);
}
} finally {
wldWLock.unlock();
}
return channel > -1;
}
return false;
}
public boolean removeWorld() { //lol don't!
World w;
int worldid;
wldRLock.lock();
try {
worldid = worlds.size() - 1;
if (worldid < 0) {
return false;
}
w = worlds.get(worldid);
} finally {
wldRLock.unlock();
}
if (w == null || !w.canUninstall()) {
return false;
}
removeWorldPlayerRanking();
w.shutdown();
wldWLock.lock();
try {
if (worldid == worlds.size() - 1) {
worlds.remove(worldid);
channels.remove(worldid);
worldRecommendedList.remove(worldid);
}
} finally {
wldWLock.unlock();
}
return true;
}
private void resetServerWorlds() { // thanks maple006 for noticing proprietary lists assigned to null
wldWLock.lock();
try {
@@ -750,50 +606,6 @@ public class Server {
}
}
private void installWorldPlayerRanking(int worldid) {
List<Pair<Integer, List<Pair<String, Integer>>>> ranking = loadPlayerRankingFromDB(worldid);
if (!ranking.isEmpty()) {
wldWLock.lock();
try {
if (!YamlConfig.config.server.USE_WHOLE_SERVER_RANKING) {
for (int i = playerRanking.size(); i <= worldid; i++) {
playerRanking.add(new ArrayList<>(0));
}
playerRanking.add(worldid, ranking.get(0).getRight());
} else {
playerRanking.add(0, ranking.get(0).getRight());
}
} finally {
wldWLock.unlock();
}
}
}
private void removeWorldPlayerRanking() {
if (!YamlConfig.config.server.USE_WHOLE_SERVER_RANKING) {
wldWLock.lock();
try {
if (playerRanking.size() < worlds.size()) {
return;
}
playerRanking.remove(playerRanking.size() - 1);
} finally {
wldWLock.unlock();
}
} else {
List<Pair<Integer, List<Pair<String, Integer>>>> ranking = loadPlayerRankingFromDB(-1 * (this.getWorldsSize() - 2)); // update ranking list
wldWLock.lock();
try {
playerRanking.add(0, ranking.get(0).getRight());
} finally {
wldWLock.unlock();
}
}
}
public void updateWorldPlayerRanking() {
List<Pair<Integer, List<Pair<String, Integer>>>> rankUpdates = loadPlayerRankingFromDB(-1 * (this.getWorldsSize() - 1));
if (rankUpdates.isEmpty()) {
@@ -1357,15 +1169,6 @@ public class Server {
return buffStorage;
}
public void deleteGuildCharacter(Character mc) {
setGuildMemberOnline(mc, false, (byte) -1);
if (mc.getMGC().getGuildRank() > 1) {
leaveGuild(mc.getMGC());
} else {
disbandGuild(mc.getMGC().getGuildId());
}
}
public void deleteGuildCharacter(GuildCharacter mgc) {
if (mgc.getCharacter() != null) {
setGuildMemberOnline(mgc.getCharacter(), false, (byte) -1);
@@ -1377,17 +1180,6 @@ public class Server {
}
}
public void reloadGuildCharacters(int world) {
World worlda = getWorld(world);
for (Character mc : worlda.getPlayerStorage().getAllCharacters()) {
if (mc.getGuildId() > 0) {
setGuildMemberOnline(mc, true, worlda.getId());
memberLevelJobUpdate(mc.getMGC());
}
}
worlda.reloadGuildSummary();
}
public void broadcastMessage(int world, Packet packet) {
for (Channel ch : getChannelsFromWorld(world)) {
ch.broadcastPacket(packet);