diff --git a/api/src/main/java/com/seibel/lod/api/items/interfaces/IDhApiUnsafeWrapper.java b/api/src/main/java/com/seibel/lod/api/items/interfaces/IDhApiUnsafeWrapper.java index d97b1c712..a1e2e8c06 100644 --- a/api/src/main/java/com/seibel/lod/api/items/interfaces/IDhApiUnsafeWrapper.java +++ b/api/src/main/java/com/seibel/lod/api/items/interfaces/IDhApiUnsafeWrapper.java @@ -6,10 +6,11 @@ package com.seibel.lod.api.items.interfaces; * the base Minecraft Objects. * * @author James Seibel - * @version 2022-9-6 + * @version 2022-9-16 */ public interface IDhApiUnsafeWrapper { + /** * Returns the Minecraft object this wrapper contains.
* Warning: This object will be Minecraft @@ -20,6 +21,6 @@ public interface IDhApiUnsafeWrapper * in order to determine what object this method returns for * the specific version of Minecraft you are developing for. */ - public Object getWrappedMcObject_UNSAFE(); + Object getWrappedMcObject_UNSAFE(); } diff --git a/core/src/main/java/com/seibel/lod/core/Initializer.java b/core/src/main/java/com/seibel/lod/core/Initializer.java index a9ba3a0a8..f8c16bd41 100644 --- a/core/src/main/java/com/seibel/lod/core/Initializer.java +++ b/core/src/main/java/com/seibel/lod/core/Initializer.java @@ -1,16 +1,10 @@ package com.seibel.lod.core; -import com.seibel.lod.api.items.interfaces.config.IDhApiConfigGroup; -import com.seibel.lod.api.items.interfaces.config.both.IDhApiWorldGenerationConfig; -import com.seibel.lod.api.items.interfaces.config.client.*; -import com.seibel.lod.core.api.external.coreImplementations.methods.config.DhApiConfig; -import com.seibel.lod.core.api.external.coreImplementations.methods.config.both.DhApiWorldGenerationConfig; -import com.seibel.lod.core.api.external.coreImplementations.methods.config.client.*; +import com.seibel.lod.core.api.external.methods.config.DhApiConfig; import com.seibel.lod.core.datatype.column.ColumnRenderLoader; import com.seibel.lod.core.datatype.full.FullDataLoader; import com.seibel.lod.core.datatype.full.SparseDataLoader; import com.seibel.lod.core.interfaces.dependencyInjection.ApiCoreInjectors; -import com.seibel.lod.core.interfaces.dependencyInjection.IDependencyInjector; /** * Handles first time Core setup. diff --git a/core/src/main/java/com/seibel/lod/core/api/external/coreImplementations/methods/config/DhApiConfig.java b/core/src/main/java/com/seibel/lod/core/api/external/methods/config/DhApiConfig.java similarity index 68% rename from core/src/main/java/com/seibel/lod/core/api/external/coreImplementations/methods/config/DhApiConfig.java rename to core/src/main/java/com/seibel/lod/core/api/external/methods/config/DhApiConfig.java index 3bf1580bd..0d7cb10a2 100644 --- a/core/src/main/java/com/seibel/lod/core/api/external/coreImplementations/methods/config/DhApiConfig.java +++ b/core/src/main/java/com/seibel/lod/core/api/external/methods/config/DhApiConfig.java @@ -1,4 +1,4 @@ -package com.seibel.lod.core.api.external.coreImplementations.methods.config; +package com.seibel.lod.core.api.external.methods.config; import com.seibel.lod.api.items.interfaces.config.IDhApiConfig; import com.seibel.lod.api.items.interfaces.config.both.IDhApiWorldGenerationConfig; @@ -6,11 +6,11 @@ import com.seibel.lod.api.items.interfaces.config.client.IDhApiBuffersConfig; import com.seibel.lod.api.items.interfaces.config.client.IDhApiGraphicsConfig; import com.seibel.lod.api.items.interfaces.config.client.IDhApiMultiplayerConfig; import com.seibel.lod.api.items.interfaces.config.client.IDhApiThreadingConfig; -import com.seibel.lod.core.api.external.coreImplementations.methods.config.both.DhApiWorldGenerationConfig; -import com.seibel.lod.core.api.external.coreImplementations.methods.config.client.DhApiBuffersConfig; -import com.seibel.lod.core.api.external.coreImplementations.methods.config.client.DhApiGraphicsConfig; -import com.seibel.lod.core.api.external.coreImplementations.methods.config.client.DhApiMultiplayerConfig; -import com.seibel.lod.core.api.external.coreImplementations.methods.config.client.DhApiThreadingConfig; +import com.seibel.lod.core.api.external.methods.config.both.DhApiWorldGenerationConfig; +import com.seibel.lod.core.api.external.methods.config.client.DhApiBuffersConfig; +import com.seibel.lod.core.api.external.methods.config.client.DhApiGraphicsConfig; +import com.seibel.lod.core.api.external.methods.config.client.DhApiMultiplayerConfig; +import com.seibel.lod.core.api.external.methods.config.client.DhApiThreadingConfig; /** * A singleton that holds all of the config groups for the API. diff --git a/core/src/main/java/com/seibel/lod/core/api/external/coreImplementations/methods/config/both/DhApiWorldGenerationConfig.java b/core/src/main/java/com/seibel/lod/core/api/external/methods/config/both/DhApiWorldGenerationConfig.java similarity index 97% rename from core/src/main/java/com/seibel/lod/core/api/external/coreImplementations/methods/config/both/DhApiWorldGenerationConfig.java rename to core/src/main/java/com/seibel/lod/core/api/external/methods/config/both/DhApiWorldGenerationConfig.java index f24219ded..e20251c7e 100644 --- a/core/src/main/java/com/seibel/lod/core/api/external/coreImplementations/methods/config/both/DhApiWorldGenerationConfig.java +++ b/core/src/main/java/com/seibel/lod/core/api/external/methods/config/both/DhApiWorldGenerationConfig.java @@ -17,7 +17,7 @@ * along with this program. If not, see . */ -package com.seibel.lod.core.api.external.coreImplementations.methods.config.both; +package com.seibel.lod.core.api.external.methods.config.both; import com.seibel.lod.api.items.interfaces.config.IDhApiConfigValue; import com.seibel.lod.api.items.interfaces.config.both.IDhApiWorldGenerationConfig; diff --git a/core/src/main/java/com/seibel/lod/core/api/external/coreImplementations/methods/config/client/DhApiBuffersConfig.java b/core/src/main/java/com/seibel/lod/core/api/external/methods/config/client/DhApiBuffersConfig.java similarity index 95% rename from core/src/main/java/com/seibel/lod/core/api/external/coreImplementations/methods/config/client/DhApiBuffersConfig.java rename to core/src/main/java/com/seibel/lod/core/api/external/methods/config/client/DhApiBuffersConfig.java index 74e2ad9b0..68e1fa177 100644 --- a/core/src/main/java/com/seibel/lod/core/api/external/coreImplementations/methods/config/client/DhApiBuffersConfig.java +++ b/core/src/main/java/com/seibel/lod/core/api/external/methods/config/client/DhApiBuffersConfig.java @@ -17,7 +17,7 @@ * along with this program. If not, see . */ -package com.seibel.lod.core.api.external.coreImplementations.methods.config.client; +package com.seibel.lod.core.api.external.methods.config.client; import com.seibel.lod.api.items.interfaces.config.IDhApiConfigValue; import com.seibel.lod.api.items.interfaces.config.client.IDhApiBuffersConfig; diff --git a/core/src/main/java/com/seibel/lod/core/api/external/coreImplementations/methods/config/client/DhApiDebuggingConfig.java b/core/src/main/java/com/seibel/lod/core/api/external/methods/config/client/DhApiDebuggingConfig.java similarity index 95% rename from core/src/main/java/com/seibel/lod/core/api/external/coreImplementations/methods/config/client/DhApiDebuggingConfig.java rename to core/src/main/java/com/seibel/lod/core/api/external/methods/config/client/DhApiDebuggingConfig.java index b3b55a98f..e775bf2bf 100644 --- a/core/src/main/java/com/seibel/lod/core/api/external/coreImplementations/methods/config/client/DhApiDebuggingConfig.java +++ b/core/src/main/java/com/seibel/lod/core/api/external/methods/config/client/DhApiDebuggingConfig.java @@ -17,7 +17,7 @@ * along with this program. If not, see . */ -package com.seibel.lod.core.api.external.coreImplementations.methods.config.client; +package com.seibel.lod.core.api.external.methods.config.client; import com.seibel.lod.api.items.interfaces.config.IDhApiConfigValue; import com.seibel.lod.api.items.interfaces.config.client.IDhApiDebuggingConfig; diff --git a/core/src/main/java/com/seibel/lod/core/api/external/coreImplementations/methods/config/client/DhApiGraphicsConfig.java b/core/src/main/java/com/seibel/lod/core/api/external/methods/config/client/DhApiGraphicsConfig.java similarity index 98% rename from core/src/main/java/com/seibel/lod/core/api/external/coreImplementations/methods/config/client/DhApiGraphicsConfig.java rename to core/src/main/java/com/seibel/lod/core/api/external/methods/config/client/DhApiGraphicsConfig.java index 9e86d725b..ad021d7a3 100644 --- a/core/src/main/java/com/seibel/lod/core/api/external/coreImplementations/methods/config/client/DhApiGraphicsConfig.java +++ b/core/src/main/java/com/seibel/lod/core/api/external/methods/config/client/DhApiGraphicsConfig.java @@ -17,7 +17,7 @@ * along with this program. If not, see . */ -package com.seibel.lod.core.api.external.coreImplementations.methods.config.client; +package com.seibel.lod.core.api.external.methods.config.client; import com.seibel.lod.api.items.enums.config.*; import com.seibel.lod.api.items.interfaces.config.IDhApiConfigValue; diff --git a/core/src/main/java/com/seibel/lod/core/api/external/coreImplementations/methods/config/client/DhApiGraphicsFogConfig.java b/core/src/main/java/com/seibel/lod/core/api/external/methods/config/client/DhApiGraphicsFogConfig.java similarity index 98% rename from core/src/main/java/com/seibel/lod/core/api/external/coreImplementations/methods/config/client/DhApiGraphicsFogConfig.java rename to core/src/main/java/com/seibel/lod/core/api/external/methods/config/client/DhApiGraphicsFogConfig.java index 24b361eb7..28b95fe5a 100644 --- a/core/src/main/java/com/seibel/lod/core/api/external/coreImplementations/methods/config/client/DhApiGraphicsFogConfig.java +++ b/core/src/main/java/com/seibel/lod/core/api/external/methods/config/client/DhApiGraphicsFogConfig.java @@ -17,7 +17,7 @@ * along with this program. If not, see . */ -package com.seibel.lod.core.api.external.coreImplementations.methods.config.client; +package com.seibel.lod.core.api.external.methods.config.client; import com.seibel.lod.api.items.enums.rendering.*; import com.seibel.lod.api.items.interfaces.config.IDhApiConfigValue; diff --git a/core/src/main/java/com/seibel/lod/core/api/external/coreImplementations/methods/config/client/DhApiMultiplayerConfig.java b/core/src/main/java/com/seibel/lod/core/api/external/methods/config/client/DhApiMultiplayerConfig.java similarity index 95% rename from core/src/main/java/com/seibel/lod/core/api/external/coreImplementations/methods/config/client/DhApiMultiplayerConfig.java rename to core/src/main/java/com/seibel/lod/core/api/external/methods/config/client/DhApiMultiplayerConfig.java index 1460c5c8d..9409fd1b3 100644 --- a/core/src/main/java/com/seibel/lod/core/api/external/coreImplementations/methods/config/client/DhApiMultiplayerConfig.java +++ b/core/src/main/java/com/seibel/lod/core/api/external/methods/config/client/DhApiMultiplayerConfig.java @@ -17,7 +17,7 @@ * along with this program. If not, see . */ -package com.seibel.lod.core.api.external.coreImplementations.methods.config.client; +package com.seibel.lod.core.api.external.methods.config.client; import com.seibel.lod.api.items.interfaces.config.IDhApiConfigValue; import com.seibel.lod.api.items.interfaces.config.client.IDhApiMultiplayerConfig; diff --git a/core/src/main/java/com/seibel/lod/core/api/external/coreImplementations/methods/config/client/DhApiThreadingConfig.java b/core/src/main/java/com/seibel/lod/core/api/external/methods/config/client/DhApiThreadingConfig.java similarity index 96% rename from core/src/main/java/com/seibel/lod/core/api/external/coreImplementations/methods/config/client/DhApiThreadingConfig.java rename to core/src/main/java/com/seibel/lod/core/api/external/methods/config/client/DhApiThreadingConfig.java index 2e24b217c..2d4613b15 100644 --- a/core/src/main/java/com/seibel/lod/core/api/external/coreImplementations/methods/config/client/DhApiThreadingConfig.java +++ b/core/src/main/java/com/seibel/lod/core/api/external/methods/config/client/DhApiThreadingConfig.java @@ -17,7 +17,7 @@ * along with this program. If not, see . */ -package com.seibel.lod.core.api.external.coreImplementations.methods.config.client; +package com.seibel.lod.core.api.external.methods.config.client; import com.seibel.lod.api.items.interfaces.config.IDhApiConfigValue; import com.seibel.lod.api.items.interfaces.config.client.IDhApiThreadingConfig; diff --git a/core/src/main/java/com/seibel/lod/core/wrapperInterfaces/world/IClientLevelWrapper.java b/core/src/main/java/com/seibel/lod/core/wrapperInterfaces/world/IClientLevelWrapper.java index 6df90b3a6..b78f97e68 100644 --- a/core/src/main/java/com/seibel/lod/core/wrapperInterfaces/world/IClientLevelWrapper.java +++ b/core/src/main/java/com/seibel/lod/core/wrapperInterfaces/world/IClientLevelWrapper.java @@ -5,8 +5,16 @@ import com.seibel.lod.core.wrapperInterfaces.block.IBlockStateWrapper; import javax.annotation.Nullable; -public interface IClientLevelWrapper extends ILevelWrapper { +/** + * + * @version 2022-9-16 + */ +public interface IClientLevelWrapper extends ILevelWrapper +{ + @Nullable IServerLevelWrapper tryGetServerSideWrapper(); + int computeBaseColor(DhBlockPos pos, IBiomeWrapper biome, IBlockStateWrapper blockState); + } diff --git a/core/src/main/java/com/seibel/lod/core/wrapperInterfaces/world/IDimensionTypeWrapper.java b/core/src/main/java/com/seibel/lod/core/wrapperInterfaces/world/IDimensionTypeWrapper.java index 9653e2fb3..88d613ea9 100644 --- a/core/src/main/java/com/seibel/lod/core/wrapperInterfaces/world/IDimensionTypeWrapper.java +++ b/core/src/main/java/com/seibel/lod/core/wrapperInterfaces/world/IDimensionTypeWrapper.java @@ -19,20 +19,22 @@ package com.seibel.lod.core.wrapperInterfaces.world; +import com.seibel.lod.api.items.interfaces.world.IDhApiDimensionTypeWrapper; import com.seibel.lod.core.interfaces.dependencyInjection.IBindable; /** * @author James Seibel - * @version 2022-8-23 + * @version 2022-9-16 */ -public interface IDimensionTypeWrapper extends IBindable +public interface IDimensionTypeWrapper extends IDhApiDimensionTypeWrapper, IBindable { + String getDimensionName(); boolean hasCeiling(); boolean hasSkyLight(); - Object getWrappedMcObject(); + Object getWrappedMcObject_UNSAFE(); } diff --git a/core/src/main/java/com/seibel/lod/core/wrapperInterfaces/world/ILevelWrapper.java b/core/src/main/java/com/seibel/lod/core/wrapperInterfaces/world/ILevelWrapper.java index 254a35543..2f58adff6 100644 --- a/core/src/main/java/com/seibel/lod/core/wrapperInterfaces/world/ILevelWrapper.java +++ b/core/src/main/java/com/seibel/lod/core/wrapperInterfaces/world/ILevelWrapper.java @@ -19,6 +19,8 @@ package com.seibel.lod.core.wrapperInterfaces.world; +import com.seibel.lod.api.items.interfaces.world.IDhApiDimensionTypeWrapper; +import com.seibel.lod.api.items.interfaces.world.IDhApiLevelWrapper; import com.seibel.lod.core.interfaces.dependencyInjection.IBindable; import com.seibel.lod.core.pos.DhBlockPos; import com.seibel.lod.core.pos.DhChunkPos; @@ -29,32 +31,39 @@ import com.seibel.lod.core.wrapperInterfaces.chunk.IChunkWrapper; * Can be either a Server world or a Client world. * * @author James Seibel - * @version 2022-9-10 + * @version 2022-9-16 */ -public interface ILevelWrapper extends IBindable +public interface ILevelWrapper extends IDhApiLevelWrapper, IBindable { - IDimensionTypeWrapper getDimensionType(); + + @Override + IDhApiDimensionTypeWrapper getDimensionType(); int getBlockLight(int x, int y, int z); int getSkyLight(int x, int y, int z); + @Override boolean hasCeiling(); + @Override boolean hasSkyLight(); + @Override int getHeight(); - default short getMinHeight() { return 0; } - + @Override + default int getMinHeight() { return 0; } + default IChunkWrapper tryGetChunk(DhChunkPos pos) { return null; } - + boolean hasChunkLoaded(int chunkX, int chunkZ); - + IBlockStateWrapper getBlockState(DhBlockPos pos); IBiomeWrapper getBiome(DhBlockPos pos); - Object unwrapLevel(); + @Override + Object getWrappedMcObject_UNSAFE(); }