Compare commits

...

16 Commits

Author SHA1 Message Date
morippi cd00c02bef Added some other comment 2022-07-22 14:37:38 +02:00
morippi b8bb69cb00 small fix 2022-07-22 13:59:04 +02:00
morippi 225bfab05e everything seems to work, new vertical merge 2022-07-22 13:33:43 +02:00
morippi 79861a4c2d Some error are still present. Almost working (the games run, but doesn't generate chunk) 2022-07-22 01:46:05 +02:00
morippi d7936fce5f Transparency should work but it doesn't 2022-07-21 18:46:09 +02:00
morippi 4de88ce088 block that touch trasparent surfaces are added in the building phase and added to the rendering phase. Transparenc is not working for some reason 2022-07-21 16:32:48 +02:00
James Seibel 086185783c Update the required Forge version
41.0.94 is the last version that doesn't work
2022-07-14 01:52:14 +00:00
coolGi 70321c2d0f Changed the version range to say when forge decided to rename stuff 2022-07-13 13:23:29 +09:30
coolGi 9ce353d897 Changed version numbers to 1.6.7 2022-07-12 23:42:07 +09:30
coolGi 1d1a2d455d Changed version numbers to 1.6.7 2022-07-12 23:41:52 +09:30
coolGi fa1e7704e0 Forge fix *again. For the 2nd time.* **In the same update.** 2022-07-12 23:36:36 +09:30
jas35484 1227c56353 Merge branch 'minecraft-lod-mod-1.6.4a_dev' into 1.6.4a_dev
# Conflicts:
#	.gitlab-ci.yml
2022-07-11 07:48:24 -05:00
James Seibel 22c85f1eda Update forge mods.toml to the correct max version 2022-07-10 18:20:58 -05:00
James Seibel d75a4f8d1a Fix compiling for MC 18 and below 2022-07-10 17:30:03 -05:00
James Seibel 7f69809345 Fix compatibility with Forge 1.19-41.0.85 2022-07-09 19:49:15 -05:00
Mitchell Skaggs 6576f55c55 Fix CI 2022-06-23 04:49:50 -05:00
9 changed files with 83 additions and 23 deletions
+3 -3
View File
@@ -6,8 +6,8 @@ parchment_version=2022.03.13
compatible_minecraft_versions=["1.19"]
# Fabric loader
fabric_loader_version=0.14.7
fabric_api_version=0.55.3+1.19
fabric_loader_version=0.14.8
fabric_api_version=0.57.0+1.19
# Fabric mod versions
modmenu_version=4.0.0
starlight_version_fabric=0
@@ -30,7 +30,7 @@ fabric_api_version=0.55.3+1.19
enable_bclib=0
# Forge loader
forge_version=41.0.19
forge_version=41.0.94
# Forge mod versions
starlight_version_forge=0
terraforged_version=
+3 -3
View File
@@ -27,9 +27,9 @@ Architectury loom version: 0.12.0-SNAPSHOT\
Java Compiler plugin: Manifold Preprocessor
#### 1.19 mods
Forge version: 41.0.10\
Fabric version: 0.14.7\
Fabric API version: 0.55.3+1.19\
Forge version: 41.0.94\
Fabric version: 0.14.8\
Fabric API version: 0.57.0+1.19\
Modmenu version: 4.0.0
#### 1.18.2 mods
@@ -157,13 +157,14 @@ public class BlockDetailWrapper extends IBlockDetailWrapper
(int) (Math.sqrt(blue / count)*255.));
}
// TODO: Remove this when transparency is added!
/*
double colorAlpha = ColorUtil.getAlpha(tempColor)/255.;
tempColor = ColorUtil.rgbToInt(
ColorUtil.getAlpha(tempColor),
(int)(ColorUtil.getRed(tempColor) * colorAlpha),
(int)(ColorUtil.getGreen(tempColor) * colorAlpha),
(int)(ColorUtil.getBlue(tempColor) * colorAlpha)
);
);*/
return tempColor;
}
@@ -244,6 +245,7 @@ public class BlockDetailWrapper extends IBlockDetailWrapper
}
} else { // Liquid Block
dontOccludeFaces = new boolean[6];
Arrays.fill(dontOccludeFaces, true);
}
}
+1 -1
Submodule core updated: e1b2c62854...6f4b0a54e9
@@ -35,9 +35,15 @@ import com.seibel.lod.common.wrappers.world.WorldWrapper;
import net.minecraft.client.Minecraft;
import net.minecraftforge.client.event.InputEvent;
import net.minecraftforge.event.TickEvent;
#if PRE_MC_1_19
import net.minecraftforge.event.world.BlockEvent;
import net.minecraftforge.event.world.ChunkEvent;
import net.minecraftforge.event.world.WorldEvent;
#else
import net.minecraftforge.event.level.BlockEvent;
import net.minecraftforge.event.level.ChunkEvent;
import net.minecraftforge.event.level.LevelEvent;
#endif
import net.minecraftforge.eventbus.api.SubscribeEvent;
/**
@@ -64,30 +70,55 @@ public class ForgeClientProxy
@SubscribeEvent
public void chunkLoadEvent(ChunkEvent.Load event)
{
#if PRE_MC_1_19
clientApi.clientChunkLoadEvent(new ChunkWrapper(event.getChunk(), event.getWorld()), WorldWrapper.getWorldWrapper(event.getWorld()));
#else
clientApi.clientChunkLoadEvent(new ChunkWrapper(event.getChunk(), event.getLevel()), WorldWrapper.getWorldWrapper(event.getLevel()));
#endif
}
@SubscribeEvent
#if PRE_MC_1_19
public void worldSaveEvent(WorldEvent.Save event)
#else
public void worldSaveEvent(LevelEvent.Save event)
#endif
{
eventApi.worldSaveEvent();
}
/** This is also called when a new dimension loads */
@SubscribeEvent
#if PRE_MC_1_19
public void worldLoadEvent(WorldEvent.Load event)
#else
public void worldLoadEvent(LevelEvent.Load event)
#endif
{
if (Minecraft.getInstance().screen instanceof TitleScreen) return;
#if PRE_MC_1_19
if (event.getWorld() != null) {
eventApi.worldLoadEvent(WorldWrapper.getWorldWrapper(event.getWorld()));
}
#else
if (event.getLevel() != null) {
eventApi.worldLoadEvent(WorldWrapper.getWorldWrapper(event.getLevel()));
}
#endif
}
@SubscribeEvent
#if PRE_MC_1_19
public void worldUnloadEvent(WorldEvent.Unload event)
{
eventApi.worldUnloadEvent(WorldWrapper.getWorldWrapper(event.getWorld()));
}
#else
public void worldUnloadEvent(LevelEvent.Unload event)
{
eventApi.worldUnloadEvent(WorldWrapper.getWorldWrapper(event.getLevel()));
}
#endif
@SubscribeEvent
public void blockChangeEvent(BlockEvent event)
@@ -99,8 +130,13 @@ public class ForgeClientProxy
event.getClass() == BlockEvent.FluidPlaceBlockEvent.class ||
event.getClass() == BlockEvent.PortalSpawnEvent.class)
{
#if PRE_MC_1_19
IChunkWrapper chunk = new ChunkWrapper(event.getWorld().getChunk(event.getPos()), event.getWorld());
DimensionTypeWrapper dimType = DimensionTypeWrapper.getDimensionTypeWrapper(event.getWorld().dimensionType());
#else
IChunkWrapper chunk = new ChunkWrapper(event.getLevel().getChunk(event.getPos()), event.getLevel());
DimensionTypeWrapper dimType = DimensionTypeWrapper.getDimensionTypeWrapper(event.getLevel().dimensionType());
#endif
// recreate the LOD where the blocks were changed
eventApi.blockChangeEvent(chunk, dimType);
@@ -108,7 +144,7 @@ public class ForgeClientProxy
}
@SubscribeEvent
public void onKeyInput(InputEvent.KeyInputEvent event)
public void onKeyInput(#if PRE_MC_1_19 InputEvent.KeyInputEvent event #else InputEvent.Key event #endif)
{
if (Minecraft.getInstance().player == null) return;
if (event.getAction() != GLFW.GLFW_PRESS) return;
@@ -116,5 +152,4 @@ public class ForgeClientProxy
}
}
@@ -34,14 +34,10 @@ import com.seibel.lod.forge.wrappers.modAccessor.OptifineAccessor;
import net.minecraft.client.renderer.block.model.BakedQuad;
import net.minecraft.core.Direction;
#if POST_MC_1_19
import net.minecraft.util.RandomSource;
#endif
import net.minecraft.world.level.ColorResolver;
import net.minecraft.world.level.biome.Biome;
import net.minecraft.world.level.block.Block;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraftforge.client.model.data.ModelDataMap;
import net.minecraftforge.common.MinecraftForge;
import net.minecraftforge.fml.ModLoadingContext;
import net.minecraftforge.fml.common.Mod;
@@ -53,12 +49,24 @@ import net.minecraftforge.fml.loading.FMLLoader;
import net.minecraftforge.fml.ExtensionPoint;
#elif MC_1_17_1
import net.minecraftforge.fmlclient.ConfigGuiHandler;
#else // 1.18+
#elif POST_MC_1_19
import net.minecraftforge.client.ConfigScreenHandler;
#else // 1.18+ untill 1.19
import net.minecraftforge.client.ConfigGuiHandler;
#endif
import java.util.List;
// these imports change due to forge refactoring classes in 1.19
#if POST_MC_1_19
import net.minecraft.util.RandomSource;
import net.minecraft.client.renderer.RenderType;
import net.minecraftforge.client.model.data.ModelData;
#else
import net.minecraftforge.client.model.data.ModelDataMap;
import java.util.Random;
#endif
import java.util.List;
/**
* Initialize and setup the Mod. <br>
@@ -101,6 +109,9 @@ public class ForgeMain implements LodForgeMethodCaller
#if PRE_MC_1_17_1
ModLoadingContext.get().registerExtensionPoint(ExtensionPoint.CONFIGGUIFACTORY,
() -> (client, parent) -> ConfigGui.getScreen(parent, ""));
#elif POST_MC_1_19
ModLoadingContext.get().registerExtensionPoint(ConfigScreenHandler.ConfigScreenFactory.class,
() -> new ConfigScreenHandler.ConfigScreenFactory((client, parent) -> ConfigGui.getScreen(parent, "")));
#else
ModLoadingContext.get().registerExtensionPoint(ConfigGuiHandler.ConfigGuiFactory.class,
() -> new ConfigGuiHandler.ConfigGuiFactory((client, parent) -> ConfigGui.getScreen(parent, "")));
@@ -109,15 +120,21 @@ public class ForgeMain implements LodForgeMethodCaller
MinecraftForge.EVENT_BUS.register(forgeClientProxy);
}
private final ModelDataMap dataMap = new ModelDataMap.Builder().build();
#if PRE_MC_1_19
private final ModelDataMap modelData = new ModelDataMap.Builder().build();
#else
private final ModelData modelData = ModelData.EMPTY;
#endif
@Override
#if PRE_MC_1_19
public List<BakedQuad> getQuads(MinecraftClientWrapper mc, Block block, BlockState blockState, Direction direction, Random random) {
return mc.getModelManager().getBlockModelShaper().getBlockModel(block.defaultBlockState()).getQuads(blockState, direction, random, dataMap);
return mc.getModelManager().getBlockModelShaper().getBlockModel(block.defaultBlockState()).getQuads(blockState, direction, random, modelData);
}
#else
public List<BakedQuad> getQuads(MinecraftClientWrapper mc, Block block, BlockState blockState, Direction direction, RandomSource random) {
return mc.getModelManager().getBlockModelShaper().getBlockModel(block.defaultBlockState()).getQuads(blockState, direction, random, dataMap);
public List<BakedQuad> getQuads(MinecraftClientWrapper mc, Block block, BlockState blockState, Direction direction, RandomSource random)
{
return mc.getModelManager().getBlockModelShaper().getBlockModel(block.defaultBlockState()).getQuads(blockState, direction, random, modelData #if POST_MC_1_19, RenderType.solid() #endif);
}
#endif
@@ -24,3 +24,9 @@ issueTrackerURL="${issues}"
#// Allow any version to be present (or not) on the server
acceptableRemoteVersions="*"
[[dependencies.lod]]
modId="forge"
mandatory=true
versionRange="[41.0.95,)" #// NOTE: this will cause issues for anything using MC 1.18 and lower, this is only here for MC 1.19
ordering="NONE"
side="BOTH"
+2 -2
View File
@@ -5,7 +5,7 @@ maven_group=com.seibel.lod
archives_base_name=DistantHorizons
# Mod info
mod_version=1.6.5a
mod_version=1.6.7a
mod_name=Distant Horizons
mod_description=This mod generates and renders simplified terrain beyond the normal view distance at a low performance cost. Allowing you to see much farther without turning your game into a slideshow.
mod_authors=["James Seibel", "Leonardo Amato", "Cola", "coolGi", "Ran", "Leetom"]
@@ -20,4 +20,4 @@ enabled_platforms=fabric,forge
mcVersions=1.16.5,1.17.1,1.18.1,1.18.2,1.19
##### FOR IDE SUPPORT AND TELL IDE TO USE CERTIAN MC VERSION: SWITCH THIS:
mcVer=1.16.5
mcVer=1.19
+1 -1
View File
@@ -1,5 +1,5 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.2-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-7.4.2-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists