mirror of
https://github.com/PolyhedralDev/Terra.git
synced 2026-06-17 06:11:24 +00:00
Made grass colour use default if none is defined
This commit is contained in:
+1
-12
@@ -31,24 +31,13 @@ public class NMSBiomeInjector {
|
|||||||
VanillaBiomeProperties vanillaBiomeProperties = biome.getContext().get(VanillaBiomeProperties.class);
|
VanillaBiomeProperties vanillaBiomeProperties = biome.getContext().get(VanillaBiomeProperties.class);
|
||||||
|
|
||||||
effects.fogColor(Objects.requireNonNullElse(vanillaBiomeProperties.getFogColor(), vanilla.getFogColor()))
|
effects.fogColor(Objects.requireNonNullElse(vanillaBiomeProperties.getFogColor(), vanilla.getFogColor()))
|
||||||
|
|
||||||
.waterColor(Objects.requireNonNullElse(vanillaBiomeProperties.getWaterColor(), vanilla.getWaterColor()))
|
.waterColor(Objects.requireNonNullElse(vanillaBiomeProperties.getWaterColor(), vanilla.getWaterColor()))
|
||||||
|
|
||||||
.waterFogColor(Objects.requireNonNullElse(vanillaBiomeProperties.getWaterFogColor(), vanilla.getWaterFogColor()))
|
.waterFogColor(Objects.requireNonNullElse(vanillaBiomeProperties.getWaterFogColor(), vanilla.getWaterFogColor()))
|
||||||
|
|
||||||
.skyColor(Objects.requireNonNullElse(vanillaBiomeProperties.getSkyColor(), vanilla.getSkyColor()))
|
.skyColor(Objects.requireNonNullElse(vanillaBiomeProperties.getSkyColor(), vanilla.getSkyColor()))
|
||||||
|
|
||||||
.grassColorModifier(Objects.requireNonNullElse(vanillaBiomeProperties.getGrassColorModifier(), vanilla.getSpecialEffects().getGrassColorModifier()))
|
.grassColorModifier(Objects.requireNonNullElse(vanillaBiomeProperties.getGrassColorModifier(), vanilla.getSpecialEffects().getGrassColorModifier()))
|
||||||
|
.grassColorOverride(Objects.requireNonNullElse(vanillaBiomeProperties.getGrassColor(), vanilla.getSpecialEffects().getGrassColorOverride().orElseGet(() -> Reflection.BIOME.invokeGrassColorFromTexture(vanilla))))
|
||||||
.foliageColorOverride(Objects.requireNonNullElse(vanillaBiomeProperties.getFoliageColor(), vanilla.getFoliageColor()));
|
.foliageColorOverride(Objects.requireNonNullElse(vanillaBiomeProperties.getFoliageColor(), vanilla.getFoliageColor()));
|
||||||
|
|
||||||
if(vanillaBiomeProperties.getGrassColor() == null) {
|
|
||||||
vanilla.getSpecialEffects().getGrassColorOverride().ifPresent(effects::grassColorOverride);
|
|
||||||
} else {
|
|
||||||
// grass
|
|
||||||
effects.grassColorOverride(vanillaBiomeProperties.getGrassColor());
|
|
||||||
}
|
|
||||||
|
|
||||||
if(vanillaBiomeProperties.getParticleConfig() == null) {
|
if(vanillaBiomeProperties.getParticleConfig() == null) {
|
||||||
vanilla.getSpecialEffects().getAmbientParticleSettings().ifPresent(effects::ambientParticle);
|
vanilla.getSpecialEffects().getAmbientParticleSettings().ifPresent(effects::ambientParticle);
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
+10
@@ -7,6 +7,7 @@ import net.minecraft.core.MappedRegistry;
|
|||||||
import net.minecraft.server.level.ChunkMap;
|
import net.minecraft.server.level.ChunkMap;
|
||||||
import net.minecraft.world.level.LevelAccessor;
|
import net.minecraft.world.level.LevelAccessor;
|
||||||
import net.minecraft.world.level.StructureManager;
|
import net.minecraft.world.level.StructureManager;
|
||||||
|
import net.minecraft.world.level.biome.Biome;
|
||||||
import net.minecraft.world.level.chunk.status.WorldGenContext;
|
import net.minecraft.world.level.chunk.status.WorldGenContext;
|
||||||
import xyz.jpenilla.reflectionremapper.ReflectionRemapper;
|
import xyz.jpenilla.reflectionremapper.ReflectionRemapper;
|
||||||
import xyz.jpenilla.reflectionremapper.proxy.ReflectionProxyFactory;
|
import xyz.jpenilla.reflectionremapper.proxy.ReflectionProxyFactory;
|
||||||
@@ -24,8 +25,10 @@ public class Reflection {
|
|||||||
|
|
||||||
public static final ReferenceProxy REFERENCE;
|
public static final ReferenceProxy REFERENCE;
|
||||||
|
|
||||||
|
|
||||||
public static final ChunkMapProxy CHUNKMAP;
|
public static final ChunkMapProxy CHUNKMAP;
|
||||||
public static final HolderSetProxy HOLDER_SET;
|
public static final HolderSetProxy HOLDER_SET;
|
||||||
|
public static final BiomeProxy BIOME;
|
||||||
|
|
||||||
static {
|
static {
|
||||||
ReflectionRemapper reflectionRemapper = ReflectionRemapper.forReobfMappingsInPaperJar();
|
ReflectionRemapper reflectionRemapper = ReflectionRemapper.forReobfMappingsInPaperJar();
|
||||||
@@ -37,6 +40,7 @@ public class Reflection {
|
|||||||
REFERENCE = reflectionProxyFactory.reflectionProxy(ReferenceProxy.class);
|
REFERENCE = reflectionProxyFactory.reflectionProxy(ReferenceProxy.class);
|
||||||
CHUNKMAP = reflectionProxyFactory.reflectionProxy(ChunkMapProxy.class);
|
CHUNKMAP = reflectionProxyFactory.reflectionProxy(ChunkMapProxy.class);
|
||||||
HOLDER_SET = reflectionProxyFactory.reflectionProxy(HolderSetProxy.class);
|
HOLDER_SET = reflectionProxyFactory.reflectionProxy(HolderSetProxy.class);
|
||||||
|
BIOME = reflectionProxyFactory.reflectionProxy(BiomeProxy.class);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -74,4 +78,10 @@ public class Reflection {
|
|||||||
@MethodName("contents")
|
@MethodName("contents")
|
||||||
<T> List<Holder<T>> invokeContents(HolderSet<T> instance);
|
<T> List<Holder<T>> invokeContents(HolderSet<T> instance);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Proxies(Biome.class)
|
||||||
|
public interface BiomeProxy {
|
||||||
|
@MethodName("getGrassColorFromTexture")
|
||||||
|
int invokeGrassColorFromTexture(Biome instance);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -107,9 +107,9 @@ public final class MinecraftUtil {
|
|||||||
.waterFogColor(Objects.requireNonNullElse(vanillaBiomeProperties.getWaterFogColor(), vanilla.getWaterFogColor()))
|
.waterFogColor(Objects.requireNonNullElse(vanillaBiomeProperties.getWaterFogColor(), vanilla.getWaterFogColor()))
|
||||||
.fogColor(Objects.requireNonNullElse(vanillaBiomeProperties.getFogColor(), vanilla.getFogColor()))
|
.fogColor(Objects.requireNonNullElse(vanillaBiomeProperties.getFogColor(), vanilla.getFogColor()))
|
||||||
.skyColor(Objects.requireNonNullElse(vanillaBiomeProperties.getSkyColor(), vanilla.getSkyColor()))
|
.skyColor(Objects.requireNonNullElse(vanillaBiomeProperties.getSkyColor(), vanilla.getSkyColor()))
|
||||||
.grassColorModifier(
|
.grassColorModifier(Objects.requireNonNullElse(vanillaBiomeProperties.getGrassColorModifier(), vanilla.getEffects().getGrassColorModifier()))
|
||||||
Objects.requireNonNullElse(vanillaBiomeProperties.getGrassColorModifier(),
|
.grassColor(Objects.requireNonNullElse(vanillaBiomeProperties.getGrassColor(), vanilla.getEffects().getGrassColor().orElseGet(vanilla.getDefaultGrassColor())))
|
||||||
vanilla.getEffects().getGrassColorModifier()));
|
.foliageColor(Objects.requireNonNullElse(vanillaBiomeProperties.getFoliageColor(), vanilla.getFoliageColor()));
|
||||||
|
|
||||||
if(vanillaBiomeProperties.getFoliageColor() == null) {
|
if(vanillaBiomeProperties.getFoliageColor() == null) {
|
||||||
vanilla.getEffects().getFoliageColor().ifPresent(effects::foliageColor);
|
vanilla.getEffects().getFoliageColor().ifPresent(effects::foliageColor);
|
||||||
|
|||||||
Reference in New Issue
Block a user