Delay redstone signal level lookup update by 4 ticks

This commit is contained in:
DBotThePony 2025-03-07 17:30:20 +07:00
parent d19de3facf
commit 4861513797
Signed by: DBot
GPG Key ID: DCC23B5715498507

View File

@ -7,6 +7,7 @@ import net.minecraft.nbt.CompoundTag
import net.minecraft.nbt.NbtOps
import net.minecraft.network.chat.Component
import net.minecraft.network.chat.ComponentSerialization
import net.minecraft.server.level.ServerLevel
import net.minecraft.world.MenuProvider
import net.minecraft.world.entity.player.Inventory
import net.minecraft.world.entity.player.Player
@ -83,9 +84,11 @@ abstract class MatteryDeviceBlockEntity(blockEntityType: BlockEntityType<*>, blo
override fun setLevel(level: Level) {
super.setLevel(level)
level.once {
if (!isRemoved && this.level == level) {
redstoneControl.redstoneSignal = level.getBestNeighborSignal(blockPos)
if (level is ServerLevel) {
level.once(4) {
if (!isRemoved && this.level == level) {
redstoneControl.redstoneSignal = level.getBestNeighborSignal(blockPos)
}
}
}
}