diff options
author | embeddedt <42941056+embeddedt@users.noreply.github.com> | 2022-12-26 18:58:46 -0500 |
---|---|---|
committer | embeddedt <42941056+embeddedt@users.noreply.github.com> | 2022-12-26 18:58:46 -0500 |
commit | 1075665def4a41cf0064255a6da1d1a652f5d473 (patch) | |
tree | 11bba64e8f28ce8b83adc05252b75f17e2ccbf6a /spark-forge1710 | |
parent | d9550259c1995d21fc345c58f2e531fdecf75acd (diff) | |
parent | d9655c40c02aef137c7a6a00a1cc90a1e6fb08d1 (diff) | |
download | spark-1075665def4a41cf0064255a6da1d1a652f5d473.tar.gz spark-1075665def4a41cf0064255a6da1d1a652f5d473.tar.bz2 spark-1075665def4a41cf0064255a6da1d1a652f5d473.zip |
Merge remote-tracking branch 'lucko/master' into forge-1.7.10
Diffstat (limited to 'spark-forge1710')
-rw-r--r-- | spark-forge1710/src/main/java/me/lucko/spark/forge/Forge1710WorldInfoProvider.java | 34 |
1 files changed, 29 insertions, 5 deletions
diff --git a/spark-forge1710/src/main/java/me/lucko/spark/forge/Forge1710WorldInfoProvider.java b/spark-forge1710/src/main/java/me/lucko/spark/forge/Forge1710WorldInfoProvider.java index 86ef8ec..7252d71 100644 --- a/spark-forge1710/src/main/java/me/lucko/spark/forge/Forge1710WorldInfoProvider.java +++ b/spark-forge1710/src/main/java/me/lucko/spark/forge/Forge1710WorldInfoProvider.java @@ -42,7 +42,7 @@ import java.util.HashMap; import java.util.List; public abstract class Forge1710WorldInfoProvider implements WorldInfoProvider { - public static final class Server extends Forge1710WorldInfoProvider { + public static final class Server extends Forge1710WorldInfoProvider { private final MinecraftServer server; public Server(MinecraftServer server) { @@ -50,8 +50,8 @@ public abstract class Forge1710WorldInfoProvider implements WorldInfoProvider { } @Override - public Result<ForgeChunkInfo> poll() { - Result<ForgeChunkInfo> data = new Result<>(); + public ChunksResult<ForgeChunkInfo> pollChunks() { + ChunksResult<ForgeChunkInfo> data = new ChunksResult<>(); for (WorldServer level : this.server.worldServers) { ArrayList<ForgeChunkInfo> list = new ArrayList<>(); @@ -63,6 +63,20 @@ public abstract class Forge1710WorldInfoProvider implements WorldInfoProvider { return data; } + + @Override + public CountsResult pollCounts() { + int players = this.server.getCurrentPlayerCount(); + int entities = 0; + int chunks = 0; + + for (WorldServer level : this.server.worldServers) { + entities += level.loadedEntityList.size(); + chunks += level.getChunkProvider().getLoadedChunkCount(); + } + + return new CountsResult(players, entities, -1, chunks); + } } @SideOnly(Side.CLIENT) @@ -74,8 +88,8 @@ public abstract class Forge1710WorldInfoProvider implements WorldInfoProvider { } @Override - public Result<ForgeChunkInfo> poll() { - Result<ForgeChunkInfo> data = new Result<>(); + public ChunksResult<ForgeChunkInfo> pollChunks() { + ChunksResult<ForgeChunkInfo> data = new ChunksResult<>(); WorldClient level = this.client.theWorld; if (level == null) { @@ -95,6 +109,16 @@ public abstract class Forge1710WorldInfoProvider implements WorldInfoProvider { return data; } + + @Override + public CountsResult pollCounts() { + WorldClient level = this.client.theWorld; + if (level == null) { + return null; + } + + return new CountsResult(-1, level.loadedEntityList.size(), -1, level.getChunkProvider().getLoadedChunkCount()); + } } static final class ForgeChunkInfo extends AbstractChunkInfo<Class<? extends Entity>> { |