From e3d7598501242f560c1c9f75e893af799e0a6537 Mon Sep 17 00:00:00 2001 From: s809 <43530948+s809@users.noreply.github.com> Date: Sat, 14 Oct 2023 22:13:01 +0500 Subject: [PATCH] Fix compilation --- .../distanthorizons/core/api/internal/ClientApi.java | 8 ++++---- .../fullData/loader/CompleteFullDataSourceLoader.java | 4 ++++ .../fullData/sources/interfaces/IFullDataSource.java | 1 - .../core/file/fullDatafile/FullDataFileHandler.java | 2 +- .../file/fullDatafile/GeneratedFullDataFileHandler.java | 4 +++- .../core/file/fullDatafile/RemoteFullDataFileHandler.java | 8 +++++++- .../file/subDimMatching/SubDimensionLevelMatcher.java | 2 +- .../seibel/distanthorizons/core/level/DhClientLevel.java | 2 +- .../seibel/distanthorizons/core/level/DhServerLevel.java | 1 - .../generation/FullDataSourceResponseMessage.java | 2 +- 10 files changed, 22 insertions(+), 12 deletions(-) diff --git a/core/src/main/java/com/seibel/distanthorizons/core/api/internal/ClientApi.java b/core/src/main/java/com/seibel/distanthorizons/core/api/internal/ClientApi.java index eb7c95f5d..a123a3d0a 100644 --- a/core/src/main/java/com/seibel/distanthorizons/core/api/internal/ClientApi.java +++ b/core/src/main/java/com/seibel/distanthorizons/core/api/internal/ClientApi.java @@ -372,7 +372,7 @@ public class ClientApi // Unload the current world, since it may be wrong. // A followup WorldChanged event should be received from the server soon after this. LOGGER.info("Unloading current client level so the server can define the correct multiverse level."); - this.clientLevelUnloadEvent((IClientLevelWrapper) MC.getWrappedClientWorld()); + this.clientLevelUnloadEvent(MC.getWrappedClientLevel()); }); break; @@ -396,11 +396,11 @@ public class ClientApi LOGGER.info("Server level change event received, changing the level to [" + levelKey + "]."); MC.executeOnRenderThread(() -> { - if (MC.getWrappedClientWorld() != null) + if (MC.getWrappedClientLevel() != null) { - this.clientLevelUnloadEvent((IClientLevelWrapper) MC.getWrappedClientWorld()); + this.clientLevelUnloadEvent(MC.getWrappedClientLevel()); } - IServerKeyedClientLevel clientLevel = KEYED_CLIENT_LEVEL_MANAGER.getServerKeyedLevel(MC.getWrappedClientWorld(), levelKey); + IServerKeyedClientLevel clientLevel = KEYED_CLIENT_LEVEL_MANAGER.getServerKeyedLevel(MC.getWrappedClientLevel(), levelKey); KEYED_CLIENT_LEVEL_MANAGER.setServerKeyedLevel(clientLevel); this.multiverseClientLevelLoadEvent(clientLevel); }); diff --git a/core/src/main/java/com/seibel/distanthorizons/core/dataObjects/fullData/loader/CompleteFullDataSourceLoader.java b/core/src/main/java/com/seibel/distanthorizons/core/dataObjects/fullData/loader/CompleteFullDataSourceLoader.java index 1f38b0544..32341f5a0 100644 --- a/core/src/main/java/com/seibel/distanthorizons/core/dataObjects/fullData/loader/CompleteFullDataSourceLoader.java +++ b/core/src/main/java/com/seibel/distanthorizons/core/dataObjects/fullData/loader/CompleteFullDataSourceLoader.java @@ -20,8 +20,12 @@ package com.seibel.distanthorizons.core.dataObjects.fullData.loader; import com.seibel.distanthorizons.core.dataObjects.fullData.sources.interfaces.IFullDataSource; +import com.seibel.distanthorizons.core.level.IDhLevel; import com.seibel.distanthorizons.core.pos.DhSectionPos; import com.seibel.distanthorizons.core.dataObjects.fullData.sources.CompleteFullDataSource; +import com.seibel.distanthorizons.core.util.objects.dataStreams.DhDataInputStream; + +import java.io.IOException; public class CompleteFullDataSourceLoader extends AbstractFullDataSourceLoader { diff --git a/core/src/main/java/com/seibel/distanthorizons/core/dataObjects/fullData/sources/interfaces/IFullDataSource.java b/core/src/main/java/com/seibel/distanthorizons/core/dataObjects/fullData/sources/interfaces/IFullDataSource.java index ca8bd23ce..cbd21b50a 100644 --- a/core/src/main/java/com/seibel/distanthorizons/core/dataObjects/fullData/sources/interfaces/IFullDataSource.java +++ b/core/src/main/java/com/seibel/distanthorizons/core/dataObjects/fullData/sources/interfaces/IFullDataSource.java @@ -63,7 +63,6 @@ public interface IFullDataSource /** Returns the detail level of the data contained by this {@link IFullDataSource}. */ byte getDataDetailLevel(); - long getTypeId(); byte getBinaryDataFormatVersion(); EDhApiWorldGenerationStep getWorldGenStep(); diff --git a/core/src/main/java/com/seibel/distanthorizons/core/file/fullDatafile/FullDataFileHandler.java b/core/src/main/java/com/seibel/distanthorizons/core/file/fullDatafile/FullDataFileHandler.java index 3905e220b..55b27156c 100644 --- a/core/src/main/java/com/seibel/distanthorizons/core/file/fullDatafile/FullDataFileHandler.java +++ b/core/src/main/java/com/seibel/distanthorizons/core/file/fullDatafile/FullDataFileHandler.java @@ -76,7 +76,7 @@ public class FullDataFileHandler implements IFullDataSourceProvider } return map; } - protected boolean fileExists(DhSectionPos pos) { return this.computeDataFilePath(pos).exists(); } + protected boolean fileExists(DhSectionPos pos) { return this.fullDataRepo.existsWithPrimaryKey(pos.serialize()); } protected final IDhLevel level; protected final File saveDir; diff --git a/core/src/main/java/com/seibel/distanthorizons/core/file/fullDatafile/GeneratedFullDataFileHandler.java b/core/src/main/java/com/seibel/distanthorizons/core/file/fullDatafile/GeneratedFullDataFileHandler.java index 417f0da0f..2f9348b90 100644 --- a/core/src/main/java/com/seibel/distanthorizons/core/file/fullDatafile/GeneratedFullDataFileHandler.java +++ b/core/src/main/java/com/seibel/distanthorizons/core/file/fullDatafile/GeneratedFullDataFileHandler.java @@ -36,6 +36,7 @@ import com.seibel.distanthorizons.core.util.LodUtil; import org.apache.logging.log4j.Logger; import javax.annotation.Nullable; +import java.io.File; import java.lang.ref.WeakReference; import java.util.*; import java.util.concurrent.*; @@ -47,7 +48,7 @@ public class GeneratedFullDataFileHandler extends FullDataFileHandler { private static final Logger LOGGER = DhLoggerBuilder.getLogger(); - private final AtomicReference worldGenQueueRef = new AtomicReference<>(null); + protected final AtomicReference worldGenQueueRef = new AtomicReference<>(null); private final ArrayList onWorldGenTaskCompleteListeners = new ArrayList<>(); @@ -55,6 +56,7 @@ public class GeneratedFullDataFileHandler extends FullDataFileHandler private final ConcurrentHashMap generatingDataSourceByPos = new ConcurrentHashMap<>(); public GeneratedFullDataFileHandler(IDhLevel level, AbstractSaveStructure saveStructure) { super(level, saveStructure); } + public GeneratedFullDataFileHandler(IDhLevel level, AbstractSaveStructure saveStructure, @Nullable File saveDirOverride) { super(level, saveStructure, saveDirOverride); } diff --git a/core/src/main/java/com/seibel/distanthorizons/core/file/fullDatafile/RemoteFullDataFileHandler.java b/core/src/main/java/com/seibel/distanthorizons/core/file/fullDatafile/RemoteFullDataFileHandler.java index f4468b897..bbe04f053 100644 --- a/core/src/main/java/com/seibel/distanthorizons/core/file/fullDatafile/RemoteFullDataFileHandler.java +++ b/core/src/main/java/com/seibel/distanthorizons/core/file/fullDatafile/RemoteFullDataFileHandler.java @@ -58,10 +58,16 @@ public class RemoteFullDataFileHandler extends GeneratedFullDataFileHandler private final AtomicBoolean isUpdating = new AtomicBoolean(false); private boolean invalidSectionsFound = false; - public RemoteFullDataFileHandler(IDhLevel level, AbstractSaveStructure saveStructure, @Nullable ClientNetworkState networkState) { + public RemoteFullDataFileHandler(IDhLevel level, AbstractSaveStructure saveStructure, @Nullable ClientNetworkState networkState) + { super(level, saveStructure); this.networkState = networkState; } + public RemoteFullDataFileHandler(IDhLevel level, AbstractSaveStructure saveStructure, @Nullable File saveDirOverride, @Nullable ClientNetworkState networkState) + { + super(level, saveStructure, saveDirOverride); + this.networkState = networkState; + } private void sendUpdateChecks() { diff --git a/core/src/main/java/com/seibel/distanthorizons/core/file/subDimMatching/SubDimensionLevelMatcher.java b/core/src/main/java/com/seibel/distanthorizons/core/file/subDimMatching/SubDimensionLevelMatcher.java index 276c48dd4..48bfd88b4 100644 --- a/core/src/main/java/com/seibel/distanthorizons/core/file/subDimMatching/SubDimensionLevelMatcher.java +++ b/core/src/main/java/com/seibel/distanthorizons/core/file/subDimMatching/SubDimensionLevelMatcher.java @@ -218,7 +218,7 @@ public class SubDimensionLevelMatcher implements AutoCloseable try { // get the data source to compare against - IDhLevel tempLevel = new DhClientLevel(new ClientOnlySaveStructure(), this.currentClientLevel, testLevelFolder, false); + IDhLevel tempLevel = new DhClientLevel(new ClientOnlySaveStructure(), this.currentClientLevel, testLevelFolder, false, null); IFullDataSource testFullDataSource = tempLevel.getFileHandler().readAsync(new DhSectionPos(this.playerData.playerBlockPos)).join(); if (testFullDataSource == null) { diff --git a/core/src/main/java/com/seibel/distanthorizons/core/level/DhClientLevel.java b/core/src/main/java/com/seibel/distanthorizons/core/level/DhClientLevel.java index 90730f1a0..4b14d4a2a 100644 --- a/core/src/main/java/com/seibel/distanthorizons/core/level/DhClientLevel.java +++ b/core/src/main/java/com/seibel/distanthorizons/core/level/DhClientLevel.java @@ -88,7 +88,7 @@ public class DhClientLevel extends DhLevel implements IDhClientLevel { this.levelWrapper = clientLevelWrapper; this.saveStructure = saveStructure; - this.dataFileHandler = new RemoteFullDataFileHandler(this, saveStructure, networkState); + this.dataFileHandler = new RemoteFullDataFileHandler(this, saveStructure, fullDataSaveDirOverride, networkState); this.worldGeneratorEnabledConfig = new AppliedConfigState<>(Config.Client.Advanced.WorldGenerator.enableDistantGeneration); this.networkState = networkState; diff --git a/core/src/main/java/com/seibel/distanthorizons/core/level/DhServerLevel.java b/core/src/main/java/com/seibel/distanthorizons/core/level/DhServerLevel.java index 72287d0fe..34278969d 100644 --- a/core/src/main/java/com/seibel/distanthorizons/core/level/DhServerLevel.java +++ b/core/src/main/java/com/seibel/distanthorizons/core/level/DhServerLevel.java @@ -185,7 +185,6 @@ public class DhServerLevel extends DhLevel implements IDhServerLevel public void removePlayer(IServerPlayerWrapper serverPlayer) { - //noinspection ResultOfMethodCallIgnored this.worldGenLoopingQueue.remove(serverPlayer); } diff --git a/core/src/main/java/com/seibel/distanthorizons/core/network/messages/fullData/generation/FullDataSourceResponseMessage.java b/core/src/main/java/com/seibel/distanthorizons/core/network/messages/fullData/generation/FullDataSourceResponseMessage.java index e29538f01..bc72d6e77 100644 --- a/core/src/main/java/com/seibel/distanthorizons/core/network/messages/fullData/generation/FullDataSourceResponseMessage.java +++ b/core/src/main/java/com/seibel/distanthorizons/core/network/messages/fullData/generation/FullDataSourceResponseMessage.java @@ -70,7 +70,7 @@ public class FullDataSourceResponseMessage extends FutureTrackableNetworkMessage public void decode0(ByteBuf in) { byte dataVersion = in.readByte(); - this.fullDataSourceLoader = (CompleteFullDataSourceLoader) AbstractFullDataSourceLoader.getLoader(CompleteFullDataSource.TYPE_ID, dataVersion); + this.fullDataSourceLoader = (CompleteFullDataSourceLoader) AbstractFullDataSourceLoader.getLoader(CompleteFullDataSource.DATA_SOURCE_TYPE, dataVersion); this.dataBuffer = in.readBytes(in.readInt()); }