diff --git a/gradle.properties b/gradle.properties index a43ad474..ddc899c3 100644 --- a/gradle.properties +++ b/gradle.properties @@ -3,7 +3,7 @@ org.gradle.jvmargs=-Xmx1G # Fabric Properties # check https://fabricmc.net/develop/ - minecraft_version=25w36b + minecraft_version=25w37a loader_version=0.16.14 jsr305_version=3.0.2 fabric_version=0.119.5+1.21.5 diff --git a/src/main/java/carpet/fakes/LevelInterface.java b/src/main/java/carpet/fakes/LevelInterface.java index 583da757..5db348d9 100644 --- a/src/main/java/carpet/fakes/LevelInterface.java +++ b/src/main/java/carpet/fakes/LevelInterface.java @@ -1,5 +1,6 @@ package carpet.fakes; +import net.minecraft.world.level.redstone.CollectingNeighborUpdater; import net.minecraft.world.level.redstone.NeighborUpdater; import org.jetbrains.annotations.Nullable; @@ -21,5 +22,5 @@ public interface LevelInterface List getOtherEntitiesLimited(@Nullable Entity except, AABB box, Predicate predicate, int limit); - NeighborUpdater getNeighborUpdater(); + CollectingNeighborUpdater getNeighborUpdater(); } diff --git a/src/main/java/carpet/mixins/BarrierBlock_updateSuppressionBlockMixin.java b/src/main/java/carpet/mixins/BarrierBlock_updateSuppressionBlockMixin.java index 81017c3b..3861e07e 100644 --- a/src/main/java/carpet/mixins/BarrierBlock_updateSuppressionBlockMixin.java +++ b/src/main/java/carpet/mixins/BarrierBlock_updateSuppressionBlockMixin.java @@ -2,7 +2,7 @@ package carpet.mixins; import carpet.CarpetSettings; import carpet.fakes.LevelInterface; -import net.minecraft.world.level.redstone.NeighborUpdater; +import net.minecraft.world.level.redstone.CollectingNeighborUpdater; import net.minecraft.util.RandomSource; import net.minecraft.world.level.redstone.Orientation; import org.spongepowered.asm.mixin.Mixin; @@ -36,7 +36,7 @@ public class BarrierBlock_updateSuppressionBlockMixin extends Block { BlockState stateAbove = level.getBlockState(pos.above()); if (stateAbove.is(Blocks.ACTIVATOR_RAIL) && !stateAbove.getValue(PoweredRailBlock.POWERED)) { level.scheduleTick(pos, this, 1); - NeighborUpdater updater = ((LevelInterface)level).getNeighborUpdater(); + CollectingNeighborUpdater updater = ((LevelInterface)level).getNeighborUpdater(); if (updater instanceof CollectingNeighborUpdaterAccessor cnua) cnua.setCount(cnua.getMaxChainedNeighborUpdates()-CarpetSettings.updateSuppressionBlock); } diff --git a/src/main/java/carpet/mixins/ChunkMap_scarpetChunkCreationMixin.java b/src/main/java/carpet/mixins/ChunkMap_scarpetChunkCreationMixin.java index 307351fa..6ed8489f 100644 --- a/src/main/java/carpet/mixins/ChunkMap_scarpetChunkCreationMixin.java +++ b/src/main/java/carpet/mixins/ChunkMap_scarpetChunkCreationMixin.java @@ -9,6 +9,7 @@ import java.util.Map.Entry; import java.util.Set; import java.util.concurrent.CompletableFuture; import java.util.concurrent.Future; +import java.util.function.Consumer; import java.util.function.IntFunction; import java.util.stream.Collectors; @@ -94,8 +95,8 @@ public abstract class ChunkMap_scarpetChunkCreationMixin implements ThreadedAnvi @Shadow protected abstract boolean promoteChunkMap(); - @Shadow - protected abstract Iterable getChunks(); + //@Shadow + //protected abstract void forEachReadyToSendChunk(Consumer consumer); // for getChunks() @Shadow diff --git a/src/main/java/carpet/mixins/Level_tickMixin.java b/src/main/java/carpet/mixins/Level_tickMixin.java index 63402374..426235aa 100644 --- a/src/main/java/carpet/mixins/Level_tickMixin.java +++ b/src/main/java/carpet/mixins/Level_tickMixin.java @@ -2,7 +2,7 @@ package carpet.mixins; import carpet.fakes.LevelInterface; import carpet.utils.CarpetProfiler; -import net.minecraft.world.level.redstone.NeighborUpdater; +import net.minecraft.world.level.redstone.CollectingNeighborUpdater; import org.spongepowered.asm.mixin.Final; import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.Shadow; @@ -22,7 +22,7 @@ import net.minecraft.world.level.Level; public abstract class Level_tickMixin implements LevelInterface { @Shadow @Final public boolean isClientSide; - @Shadow @Final protected NeighborUpdater neighborUpdater; + @Shadow @Final protected CollectingNeighborUpdater neighborUpdater; CarpetProfiler.ProfilerToken currentSection; CarpetProfiler.ProfilerToken entitySection; @@ -30,7 +30,7 @@ public abstract class Level_tickMixin implements LevelInterface @Override @Unique - public NeighborUpdater getNeighborUpdater() { + public CollectingNeighborUpdater getNeighborUpdater() { return this.neighborUpdater; } diff --git a/src/main/java/carpet/script/value/EntityValue.java b/src/main/java/carpet/script/value/EntityValue.java index 600158b1..5903c3f7 100644 --- a/src/main/java/carpet/script/value/EntityValue.java +++ b/src/main/java/carpet/script/value/EntityValue.java @@ -921,7 +921,7 @@ public class EntityValue extends Value } else { - ((ServerLevel) e.level()).getChunkSource().broadcastAndSend(e, ClientboundEntityPositionSyncPacket.of(e)); + ((ServerLevel) e.level()).getChunkSource().sendToTrackingPlayersAndSelf(e, ClientboundEntityPositionSyncPacket.of(e)); } } }