]> git.lizzy.rs Git - LightOverlay.git/commitdiff
Bump version to 7.0.0 and add support for mushroom biome tags
authorshedaniel <daniel@shedaniel.me>
Tue, 14 Jun 2022 14:29:49 +0000 (22:29 +0800)
committershedaniel <daniel@shedaniel.me>
Tue, 14 Jun 2022 14:29:49 +0000 (22:29 +0800)
common/src/main/java/me/shedaniel/lightoverlay/common/LightOverlayTicker.java
fabric/src/main/java/me/shedaniel/lightoverlay/common/fabric/LightOverlayTickerImpl.java
forge/src/main/java/me/shedaniel/lightoverlay/common/forge/LightOverlayTickerImpl.java [new file with mode: 0644]
gradle.properties

index 24096b38fd59a5768350364eeb57fe99401bae37..a2539eccaee65dbcc92b4ce340d0609a12ab6774 100644 (file)
@@ -266,7 +266,7 @@ public class LightOverlayTicker {
         // Check block state allow spawning (excludes bedrock and barriers automatically)
         if (!blockBelowState.isValidSpawn(world, down, TESTING_ENTITY_TYPE.get()))
             return LightOverlay.CROSS_NONE;
-        if (!LightOverlay.mushroom && biome.is(Biomes.MUSHROOM_FIELDS))
+        if (!LightOverlay.mushroom && isMushroom(biome))
             return LightOverlay.CROSS_NONE;
         int blockLightLevel = block.getLightValue(pos);
         int skyLightLevel = sky.getLightValue(pos);
@@ -278,6 +278,11 @@ public class LightOverlayTicker {
                 LightOverlay.lowerCross : LightOverlay.CROSS_RED;
     }
     
+    @ExpectPlatform
+    private static boolean isMushroom(Holder<Biome> biome) {
+        throw new AssertionError();
+    }
+    
     public static int getCrossLevel(BlockPos pos, BlockPos down, BlockGetter world, LayerLightEventListener view, CollisionContext collisionContext) {
         BlockState blockBelowState = world.getBlockState(down);
         BlockState blockUpperState = world.getBlockState(pos);
index adadbd6987df4667f884afbb0490e6cc8c22ab9b..4d037c33d4ba83aa5a58e3dd07c1799a77bf65ca 100644 (file)
@@ -1,16 +1,28 @@
 package me.shedaniel.lightoverlay.common.fabric;
 
 import com.google.common.collect.ImmutableSet;
+import net.minecraft.core.Holder;
+import net.minecraft.core.Registry;
+import net.minecraft.resources.ResourceLocation;
+import net.minecraft.tags.TagKey;
 import net.minecraft.world.entity.Entity;
 import net.minecraft.world.entity.EntityDimensions;
 import net.minecraft.world.entity.EntityType;
 import net.minecraft.world.entity.MobCategory;
+import net.minecraft.world.level.biome.Biome;
+import net.minecraft.world.level.biome.Biomes;
 
 public class LightOverlayTickerImpl {
+    private static final TagKey<Biome> MUSHROOM = TagKey.create(Registry.BIOME_REGISTRY, new ResourceLocation("c", "mushroom"));
+    
     public static void populateEntityType(EntityType<Entity> type) {
         type.factory = (entityType, level) -> null;
         type.category = MobCategory.MONSTER;
         type.immuneTo = ImmutableSet.of();
         type.dimensions = EntityDimensions.fixed(0.0F, 0.0F);
     }
+    
+    public static boolean isMushroom(Holder<Biome> biome) {
+        return biome.is(Biomes.MUSHROOM_FIELDS) || biome.is(MUSHROOM);
+    }
 }
diff --git a/forge/src/main/java/me/shedaniel/lightoverlay/common/forge/LightOverlayTickerImpl.java b/forge/src/main/java/me/shedaniel/lightoverlay/common/forge/LightOverlayTickerImpl.java
new file mode 100644 (file)
index 0000000..3bb038c
--- /dev/null
@@ -0,0 +1,17 @@
+package me.shedaniel.lightoverlay.common.forge;
+
+import net.minecraft.core.Holder;
+import net.minecraft.core.Registry;
+import net.minecraft.resources.ResourceLocation;
+import net.minecraft.tags.TagKey;
+import net.minecraft.world.level.biome.Biome;
+import net.minecraft.world.level.biome.Biomes;
+import net.minecraftforge.common.data.ForgeBiomeTagsProvider;
+
+public class LightOverlayTickerImpl {
+    private static final TagKey<Biome> MUSHROOM = TagKey.create(Registry.BIOME_REGISTRY, new ResourceLocation("forge", "is_mushroom"));
+    
+    public static boolean isMushroom(Holder<Biome> biome) {
+        return biome.is(Biomes.MUSHROOM_FIELDS) || biome.is(MUSHROOM);
+    }
+}
index c39f236ef3eb8a1c2bb6a2009cf9b7e3011fd29d..7abff5d79602b03a42204d4b06486d4e8304551b 100755 (executable)
@@ -1,7 +1,7 @@
 org.gradle.jvmargs=-Xmx3G
 org.gradle.daemon=false
 
-mod_version=6.1.0
+mod_version=7.0.0
 minecraft_version=1.19
 
 architectury_version=5.6.22