mirror of
https://github.com/songoda/SongodaCore.git
synced 2025-02-17 03:51:27 +01:00
Reimplement BlockUtils#updateAdjacentComparators in WorldCore
The implementation broke in 1.19.4 mid-version.
Fixes `java.lang.NoSuchMethodException: org.bukkit.craftbukkit.v1_19_R3.CraftChunk.getHandle()`
Related commit: a3e73be1aa
This commit is contained in:
parent
57f9f1f911
commit
e21db58a67
@ -4,6 +4,7 @@ import com.songoda.core.compatibility.ClassMapping;
|
||||
import com.songoda.core.compatibility.CompatibleMaterial;
|
||||
import com.songoda.core.compatibility.MethodMapping;
|
||||
import com.songoda.core.compatibility.ServerVersion;
|
||||
import com.songoda.core.nms.NmsManager;
|
||||
import org.bukkit.Effect;
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.Material;
|
||||
@ -337,7 +338,10 @@ public class BlockUtils {
|
||||
* Manually trigger the updateAdjacentComparators method for containers
|
||||
*
|
||||
* @param loc The Location of the container
|
||||
*
|
||||
* @deprecated Broken in/since Spigot 1.19.4! Use {@link com.songoda.core.nms.world.WorldCore#updateAdjacentComparators(Block)} on {@link NmsManager#getWorld()} instead
|
||||
*/
|
||||
@Deprecated
|
||||
public static void updateAdjacentComparators(Location loc) {
|
||||
if (loc == null || loc.getWorld() == null) {
|
||||
return;
|
||||
|
@ -3,12 +3,11 @@ package com.songoda.core.nms.world;
|
||||
import org.bukkit.Chunk;
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.World;
|
||||
import org.bukkit.block.Block;
|
||||
import org.bukkit.block.BlockState;
|
||||
import org.bukkit.block.CreatureSpawner;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
import java.lang.reflect.InvocationTargetException;
|
||||
|
||||
public interface WorldCore {
|
||||
SSpawner getSpawner(CreatureSpawner spawner);
|
||||
|
||||
@ -30,6 +29,8 @@ public interface WorldCore {
|
||||
*/
|
||||
void randomTickChunk(Chunk bukkitChunk, int tickAmount) throws ReflectiveOperationException;
|
||||
|
||||
void updateAdjacentComparators(Block bukkitBlock);
|
||||
|
||||
/**
|
||||
* Ticks all inactive spawners in a specific chunk ignoring the minimum required players within a specific range.<br>
|
||||
* A spawner is deemed inactive if no player is within its activation range.
|
||||
|
@ -18,6 +18,8 @@ import org.bukkit.Location;
|
||||
import org.bukkit.World;
|
||||
import org.bukkit.block.CreatureSpawner;
|
||||
import org.bukkit.craftbukkit.v1_10_R1.CraftChunk;
|
||||
import org.bukkit.craftbukkit.v1_10_R1.block.CraftBlock;
|
||||
import org.bukkit.craftbukkit.v1_10_R1.util.CraftMagicNumbers;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
public class WorldCoreImpl implements WorldCore {
|
||||
@ -85,4 +87,14 @@ public class WorldCoreImpl implements WorldCore {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateAdjacentComparators(org.bukkit.block.Block bukkitBlock) {
|
||||
CraftBlock craftBlock = (CraftBlock) bukkitBlock;
|
||||
CraftChunk craftChunk = (CraftChunk) bukkitBlock.getChunk();
|
||||
net.minecraft.server.v1_10_R1.World nmsWorld = craftChunk.getHandle().getWorld();
|
||||
|
||||
BlockPosition blockPosition = new BlockPosition(craftBlock.getX(), craftBlock.getY(), craftBlock.getZ());
|
||||
nmsWorld.updateAdjacentComparators(blockPosition, CraftMagicNumbers.getBlock(craftBlock));
|
||||
}
|
||||
}
|
||||
|
@ -18,6 +18,8 @@ import org.bukkit.Location;
|
||||
import org.bukkit.World;
|
||||
import org.bukkit.block.CreatureSpawner;
|
||||
import org.bukkit.craftbukkit.v1_11_R1.CraftChunk;
|
||||
import org.bukkit.craftbukkit.v1_11_R1.block.CraftBlock;
|
||||
import org.bukkit.craftbukkit.v1_11_R1.util.CraftMagicNumbers;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
public class WorldCoreImpl implements WorldCore {
|
||||
@ -85,4 +87,14 @@ public class WorldCoreImpl implements WorldCore {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateAdjacentComparators(org.bukkit.block.Block bukkitBlock) {
|
||||
CraftBlock craftBlock = (CraftBlock) bukkitBlock;
|
||||
CraftChunk craftChunk = (CraftChunk) bukkitBlock.getChunk();
|
||||
net.minecraft.server.v1_11_R1.World nmsWorld = craftChunk.getHandle().getWorld();
|
||||
|
||||
BlockPosition blockPosition = new BlockPosition(craftBlock.getX(), craftBlock.getY(), craftBlock.getZ());
|
||||
nmsWorld.updateAdjacentComparators(blockPosition, CraftMagicNumbers.getBlock(craftBlock));
|
||||
}
|
||||
}
|
||||
|
@ -18,6 +18,8 @@ import org.bukkit.Location;
|
||||
import org.bukkit.World;
|
||||
import org.bukkit.block.CreatureSpawner;
|
||||
import org.bukkit.craftbukkit.v1_12_R1.CraftChunk;
|
||||
import org.bukkit.craftbukkit.v1_12_R1.block.CraftBlock;
|
||||
import org.bukkit.craftbukkit.v1_12_R1.util.CraftMagicNumbers;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
public class WorldCoreImpl implements WorldCore {
|
||||
@ -85,4 +87,14 @@ public class WorldCoreImpl implements WorldCore {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateAdjacentComparators(org.bukkit.block.Block bukkitBlock) {
|
||||
CraftBlock craftBlock = (CraftBlock) bukkitBlock;
|
||||
CraftChunk craftChunk = (CraftChunk) bukkitBlock.getChunk();
|
||||
net.minecraft.server.v1_12_R1.World nmsWorld = craftChunk.getHandle().getWorld();
|
||||
|
||||
BlockPosition blockPosition = new BlockPosition(craftBlock.getX(), craftBlock.getY(), craftBlock.getZ());
|
||||
nmsWorld.updateAdjacentComparators(blockPosition, CraftMagicNumbers.getBlock(craftBlock));
|
||||
}
|
||||
}
|
||||
|
@ -16,8 +16,10 @@ import net.minecraft.server.v1_13_R1.MobSpawnerAbstract;
|
||||
import net.minecraft.server.v1_13_R1.WorldServer;
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.World;
|
||||
import org.bukkit.block.Block;
|
||||
import org.bukkit.block.CreatureSpawner;
|
||||
import org.bukkit.craftbukkit.v1_13_R1.CraftChunk;
|
||||
import org.bukkit.craftbukkit.v1_13_R1.block.CraftBlock;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
public class WorldCoreImpl implements WorldCore {
|
||||
@ -89,4 +91,13 @@ public class WorldCoreImpl implements WorldCore {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateAdjacentComparators(Block bukkitBlock) {
|
||||
CraftBlock craftBlock = (CraftBlock) bukkitBlock;
|
||||
CraftChunk craftChunk = (CraftChunk) bukkitBlock.getChunk();
|
||||
|
||||
net.minecraft.server.v1_13_R1.World nmsWorld = craftChunk.getHandle().getWorld();
|
||||
nmsWorld.updateAdjacentComparators(craftBlock.getPosition(), craftBlock.getNMS().getBlock());
|
||||
}
|
||||
}
|
||||
|
@ -16,8 +16,10 @@ import net.minecraft.server.v1_13_R2.MobSpawnerAbstract;
|
||||
import net.minecraft.server.v1_13_R2.WorldServer;
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.World;
|
||||
import org.bukkit.block.Block;
|
||||
import org.bukkit.block.CreatureSpawner;
|
||||
import org.bukkit.craftbukkit.v1_13_R2.CraftChunk;
|
||||
import org.bukkit.craftbukkit.v1_13_R2.block.CraftBlock;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
public class WorldCoreImpl implements WorldCore {
|
||||
@ -96,4 +98,13 @@ public class WorldCoreImpl implements WorldCore {
|
||||
|
||||
chunk.world.methodProfiler.exit();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateAdjacentComparators(Block bukkitBlock) {
|
||||
CraftBlock craftBlock = (CraftBlock) bukkitBlock;
|
||||
CraftChunk craftChunk = (CraftChunk) bukkitBlock.getChunk();
|
||||
|
||||
net.minecraft.server.v1_13_R2.World nmsWorld = craftChunk.getHandle().getWorld();
|
||||
nmsWorld.updateAdjacentComparators(craftBlock.getPosition(), craftBlock.getNMS().getBlock());
|
||||
}
|
||||
}
|
||||
|
@ -18,8 +18,10 @@ import net.minecraft.server.v1_14_R1.MobSpawnerAbstract;
|
||||
import net.minecraft.server.v1_14_R1.WorldServer;
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.World;
|
||||
import org.bukkit.block.Block;
|
||||
import org.bukkit.block.CreatureSpawner;
|
||||
import org.bukkit.craftbukkit.v1_14_R1.CraftChunk;
|
||||
import org.bukkit.craftbukkit.v1_14_R1.block.CraftBlock;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
public class WorldCoreImpl implements WorldCore {
|
||||
@ -93,4 +95,13 @@ public class WorldCoreImpl implements WorldCore {
|
||||
|
||||
profiler.exit();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateAdjacentComparators(Block bukkitBlock) {
|
||||
CraftBlock craftBlock = (CraftBlock) bukkitBlock;
|
||||
CraftChunk craftChunk = (CraftChunk) bukkitBlock.getChunk();
|
||||
|
||||
net.minecraft.server.v1_14_R1.World nmsWorld = craftChunk.getHandle().getWorld();
|
||||
nmsWorld.updateAdjacentComparators(craftBlock.getPosition(), craftBlock.getNMS().getBlock());
|
||||
}
|
||||
}
|
||||
|
@ -18,8 +18,10 @@ import net.minecraft.server.v1_15_R1.MobSpawnerAbstract;
|
||||
import net.minecraft.server.v1_15_R1.WorldServer;
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.World;
|
||||
import org.bukkit.block.Block;
|
||||
import org.bukkit.block.CreatureSpawner;
|
||||
import org.bukkit.craftbukkit.v1_15_R1.CraftChunk;
|
||||
import org.bukkit.craftbukkit.v1_15_R1.block.CraftBlock;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
public class WorldCoreImpl implements WorldCore {
|
||||
@ -96,4 +98,13 @@ public class WorldCoreImpl implements WorldCore {
|
||||
|
||||
profiler.exit();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateAdjacentComparators(Block bukkitBlock) {
|
||||
CraftBlock craftBlock = (CraftBlock) bukkitBlock;
|
||||
CraftChunk craftChunk = (CraftChunk) bukkitBlock.getChunk();
|
||||
|
||||
net.minecraft.server.v1_15_R1.World nmsWorld = craftChunk.getHandle().getWorld();
|
||||
nmsWorld.updateAdjacentComparators(craftBlock.getPosition(), craftBlock.getNMS().getBlock());
|
||||
}
|
||||
}
|
||||
|
@ -18,8 +18,10 @@ import net.minecraft.server.v1_16_R1.MobSpawnerAbstract;
|
||||
import net.minecraft.server.v1_16_R1.WorldServer;
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.World;
|
||||
import org.bukkit.block.Block;
|
||||
import org.bukkit.block.CreatureSpawner;
|
||||
import org.bukkit.craftbukkit.v1_16_R1.CraftChunk;
|
||||
import org.bukkit.craftbukkit.v1_16_R1.block.CraftBlock;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
public class WorldCoreImpl implements WorldCore {
|
||||
@ -97,4 +99,13 @@ public class WorldCoreImpl implements WorldCore {
|
||||
|
||||
profiler.exit();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateAdjacentComparators(Block bukkitBlock) {
|
||||
CraftBlock craftBlock = (CraftBlock) bukkitBlock;
|
||||
CraftChunk craftChunk = (CraftChunk) bukkitBlock.getChunk();
|
||||
|
||||
net.minecraft.server.v1_16_R1.World nmsWorld = craftChunk.getHandle().getWorld();
|
||||
nmsWorld.updateAdjacentComparators(craftBlock.getPosition(), craftBlock.getNMS().getBlock());
|
||||
}
|
||||
}
|
||||
|
@ -18,8 +18,10 @@ import net.minecraft.server.v1_16_R2.MobSpawnerAbstract;
|
||||
import net.minecraft.server.v1_16_R2.WorldServer;
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.World;
|
||||
import org.bukkit.block.Block;
|
||||
import org.bukkit.block.CreatureSpawner;
|
||||
import org.bukkit.craftbukkit.v1_16_R2.CraftChunk;
|
||||
import org.bukkit.craftbukkit.v1_16_R2.block.CraftBlock;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
public class WorldCoreImpl implements WorldCore {
|
||||
@ -97,4 +99,13 @@ public class WorldCoreImpl implements WorldCore {
|
||||
|
||||
profiler.exit();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateAdjacentComparators(Block bukkitBlock) {
|
||||
CraftBlock craftBlock = (CraftBlock) bukkitBlock;
|
||||
CraftChunk craftChunk = (CraftChunk) bukkitBlock.getChunk();
|
||||
|
||||
net.minecraft.server.v1_16_R2.World nmsWorld = craftChunk.getHandle().getWorld();
|
||||
nmsWorld.updateAdjacentComparators(craftBlock.getPosition(), craftBlock.getNMS().getBlock());
|
||||
}
|
||||
}
|
||||
|
@ -18,8 +18,10 @@ import net.minecraft.server.v1_16_R3.MobSpawnerAbstract;
|
||||
import net.minecraft.server.v1_16_R3.WorldServer;
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.World;
|
||||
import org.bukkit.block.Block;
|
||||
import org.bukkit.block.CreatureSpawner;
|
||||
import org.bukkit.craftbukkit.v1_16_R3.CraftChunk;
|
||||
import org.bukkit.craftbukkit.v1_16_R3.block.CraftBlock;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
public class WorldCoreImpl implements WorldCore {
|
||||
@ -98,4 +100,13 @@ public class WorldCoreImpl implements WorldCore {
|
||||
|
||||
profiler.exit();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateAdjacentComparators(Block bukkitBlock) {
|
||||
CraftBlock craftBlock = (CraftBlock) bukkitBlock;
|
||||
CraftChunk craftChunk = (CraftChunk) bukkitBlock.getChunk();
|
||||
|
||||
net.minecraft.server.v1_16_R3.World nmsWorld = craftChunk.getHandle().getWorld();
|
||||
nmsWorld.updateAdjacentComparators(craftBlock.getPosition(), craftBlock.getNMS().getBlock());
|
||||
}
|
||||
}
|
||||
|
@ -18,8 +18,10 @@ import net.minecraft.world.level.chunk.ChunkSection;
|
||||
import net.minecraft.world.level.material.Fluid;
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.World;
|
||||
import org.bukkit.block.Block;
|
||||
import org.bukkit.block.CreatureSpawner;
|
||||
import org.bukkit.craftbukkit.v1_17_R1.CraftChunk;
|
||||
import org.bukkit.craftbukkit.v1_17_R1.block.CraftBlock;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
public class WorldCoreImpl implements WorldCore {
|
||||
@ -96,4 +98,13 @@ public class WorldCoreImpl implements WorldCore {
|
||||
|
||||
profiler.exit();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateAdjacentComparators(Block bukkitBlock) {
|
||||
CraftBlock craftBlock = (CraftBlock) bukkitBlock;
|
||||
CraftChunk craftChunk = (CraftChunk) bukkitBlock.getChunk();
|
||||
|
||||
net.minecraft.world.level.World nmsWorld = craftChunk.getHandle().getWorld();
|
||||
nmsWorld.updateAdjacentComparators(craftBlock.getPosition(), craftBlock.getNMS().getBlock());
|
||||
}
|
||||
}
|
||||
|
@ -18,8 +18,10 @@ import net.minecraft.world.level.chunk.ChunkSection;
|
||||
import net.minecraft.world.level.material.Fluid;
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.World;
|
||||
import org.bukkit.block.Block;
|
||||
import org.bukkit.block.CreatureSpawner;
|
||||
import org.bukkit.craftbukkit.v1_18_R1.CraftChunk;
|
||||
import org.bukkit.craftbukkit.v1_18_R1.block.CraftBlock;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
public class WorldCoreImpl implements WorldCore {
|
||||
@ -93,4 +95,13 @@ public class WorldCoreImpl implements WorldCore {
|
||||
|
||||
gameprofilerfiller.c();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateAdjacentComparators(Block bukkitBlock) {
|
||||
CraftBlock craftBlock = (CraftBlock) bukkitBlock;
|
||||
CraftChunk craftChunk = (CraftChunk) bukkitBlock.getChunk();
|
||||
|
||||
WorldServer nmsWorld = craftChunk.getHandle().q;
|
||||
nmsWorld.c(craftBlock.getPosition(), craftBlock.getNMS().b());
|
||||
}
|
||||
}
|
||||
|
@ -18,8 +18,10 @@ import net.minecraft.world.level.chunk.LevelChunkSection;
|
||||
import net.minecraft.world.level.material.FluidState;
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.World;
|
||||
import org.bukkit.block.Block;
|
||||
import org.bukkit.block.CreatureSpawner;
|
||||
import org.bukkit.craftbukkit.v1_18_R2.CraftChunk;
|
||||
import org.bukkit.craftbukkit.v1_18_R2.block.CraftBlock;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
public class WorldCoreImpl implements WorldCore {
|
||||
@ -92,4 +94,13 @@ public class WorldCoreImpl implements WorldCore {
|
||||
|
||||
gameProfilerFiller.pop();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateAdjacentComparators(Block bukkitBlock) {
|
||||
CraftBlock craftBlock = (CraftBlock) bukkitBlock;
|
||||
CraftChunk craftChunk = (CraftChunk) bukkitBlock.getChunk();
|
||||
|
||||
ServerLevel nmsWorld = craftChunk.getHandle().q;
|
||||
nmsWorld.updateNeighbourForOutputSignal(craftBlock.getPosition(), craftBlock.getNMS().getBlock());
|
||||
}
|
||||
}
|
||||
|
@ -18,8 +18,10 @@ import net.minecraft.world.level.chunk.LevelChunkSection;
|
||||
import net.minecraft.world.level.material.FluidState;
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.World;
|
||||
import org.bukkit.block.Block;
|
||||
import org.bukkit.block.CreatureSpawner;
|
||||
import org.bukkit.craftbukkit.v1_19_R1.CraftChunk;
|
||||
import org.bukkit.craftbukkit.v1_19_R1.block.CraftBlock;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
public class WorldCoreImpl implements WorldCore {
|
||||
@ -90,4 +92,13 @@ public class WorldCoreImpl implements WorldCore {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateAdjacentComparators(Block bukkitBlock) {
|
||||
CraftBlock craftBlock = (CraftBlock) bukkitBlock;
|
||||
CraftChunk craftChunk = (CraftChunk) bukkitBlock.getChunk();
|
||||
|
||||
ServerLevel nmsWorld = craftChunk.getHandle().q;
|
||||
nmsWorld.updateNeighbourForOutputSignal(craftBlock.getPosition(), craftBlock.getNMS().getBlock());
|
||||
}
|
||||
}
|
||||
|
@ -18,8 +18,10 @@ import net.minecraft.world.level.chunk.LevelChunkSection;
|
||||
import net.minecraft.world.level.material.FluidState;
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.World;
|
||||
import org.bukkit.block.Block;
|
||||
import org.bukkit.block.CreatureSpawner;
|
||||
import org.bukkit.craftbukkit.v1_19_R1.CraftChunk;
|
||||
import org.bukkit.craftbukkit.v1_19_R1.block.CraftBlock;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
public class WorldCoreImpl implements WorldCore {
|
||||
@ -90,4 +92,13 @@ public class WorldCoreImpl implements WorldCore {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateAdjacentComparators(Block bukkitBlock) {
|
||||
CraftBlock craftBlock = (CraftBlock) bukkitBlock;
|
||||
CraftChunk craftChunk = (CraftChunk) bukkitBlock.getChunk();
|
||||
|
||||
ServerLevel nmsWorld = craftChunk.getHandle().q;
|
||||
nmsWorld.updateNeighbourForOutputSignal(craftBlock.getPosition(), craftBlock.getNMS().getBlock());
|
||||
}
|
||||
}
|
||||
|
@ -18,8 +18,10 @@ import net.minecraft.world.level.chunk.LevelChunkSection;
|
||||
import net.minecraft.world.level.material.FluidState;
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.World;
|
||||
import org.bukkit.block.Block;
|
||||
import org.bukkit.block.CreatureSpawner;
|
||||
import org.bukkit.craftbukkit.v1_19_R2.CraftChunk;
|
||||
import org.bukkit.craftbukkit.v1_19_R2.block.CraftBlock;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
public class WorldCoreImpl implements WorldCore {
|
||||
@ -90,4 +92,13 @@ public class WorldCoreImpl implements WorldCore {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateAdjacentComparators(Block bukkitBlock) {
|
||||
CraftBlock craftBlock = (CraftBlock) bukkitBlock;
|
||||
CraftChunk craftChunk = (CraftChunk) bukkitBlock.getChunk();
|
||||
|
||||
ServerLevel nmsWorld = craftChunk.getHandle().q;
|
||||
nmsWorld.updateNeighbourForOutputSignal(craftBlock.getPosition(), craftBlock.getNMS().getBlock());
|
||||
}
|
||||
}
|
||||
|
@ -19,8 +19,10 @@ import net.minecraft.world.level.chunk.LevelChunkSection;
|
||||
import net.minecraft.world.level.material.FluidState;
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.World;
|
||||
import org.bukkit.block.Block;
|
||||
import org.bukkit.block.CreatureSpawner;
|
||||
import org.bukkit.craftbukkit.v1_19_R3.CraftChunk;
|
||||
import org.bukkit.craftbukkit.v1_19_R3.block.CraftBlock;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
public class WorldCoreImpl implements WorldCore {
|
||||
@ -91,4 +93,13 @@ public class WorldCoreImpl implements WorldCore {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateAdjacentComparators(Block bukkitBlock) {
|
||||
CraftBlock craftBlock = (CraftBlock) bukkitBlock;
|
||||
CraftChunk craftChunk = (CraftChunk) bukkitBlock.getChunk();
|
||||
LevelChunk nmsChunk = (LevelChunk) craftChunk.getHandle(ChunkStatus.FULL);
|
||||
|
||||
nmsChunk.q.updateNeighbourForOutputSignal(craftBlock.getPosition(), craftBlock.getNMS().getBlock());
|
||||
}
|
||||
}
|
||||
|
@ -18,6 +18,8 @@ import org.bukkit.Location;
|
||||
import org.bukkit.World;
|
||||
import org.bukkit.block.CreatureSpawner;
|
||||
import org.bukkit.craftbukkit.v1_8_R1.CraftChunk;
|
||||
import org.bukkit.craftbukkit.v1_8_R1.block.CraftBlock;
|
||||
import org.bukkit.craftbukkit.v1_8_R1.util.CraftMagicNumbers;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
public class WorldCoreImpl implements WorldCore {
|
||||
@ -87,4 +89,14 @@ public class WorldCoreImpl implements WorldCore {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateAdjacentComparators(org.bukkit.block.Block bukkitBlock) {
|
||||
CraftBlock craftBlock = (CraftBlock) bukkitBlock;
|
||||
CraftChunk craftChunk = (CraftChunk) bukkitBlock.getChunk();
|
||||
net.minecraft.server.v1_8_R1.World nmsWorld = craftChunk.getHandle().getWorld();
|
||||
|
||||
BlockPosition blockPosition = new BlockPosition(craftBlock.getX(), craftBlock.getY(), craftBlock.getZ());
|
||||
nmsWorld.updateAdjacentComparators(blockPosition, CraftMagicNumbers.getBlock(craftBlock));
|
||||
}
|
||||
}
|
||||
|
@ -18,6 +18,8 @@ import org.bukkit.Location;
|
||||
import org.bukkit.World;
|
||||
import org.bukkit.block.CreatureSpawner;
|
||||
import org.bukkit.craftbukkit.v1_8_R2.CraftChunk;
|
||||
import org.bukkit.craftbukkit.v1_8_R2.block.CraftBlock;
|
||||
import org.bukkit.craftbukkit.v1_8_R2.util.CraftMagicNumbers;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
public class WorldCoreImpl implements WorldCore {
|
||||
@ -87,4 +89,14 @@ public class WorldCoreImpl implements WorldCore {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateAdjacentComparators(org.bukkit.block.Block bukkitBlock) {
|
||||
CraftBlock craftBlock = (CraftBlock) bukkitBlock;
|
||||
CraftChunk craftChunk = (CraftChunk) bukkitBlock.getChunk();
|
||||
net.minecraft.server.v1_8_R2.World nmsWorld = craftChunk.getHandle().getWorld();
|
||||
|
||||
BlockPosition blockPosition = new BlockPosition(craftBlock.getX(), craftBlock.getY(), craftBlock.getZ());
|
||||
nmsWorld.updateAdjacentComparators(blockPosition, CraftMagicNumbers.getBlock(craftBlock));
|
||||
}
|
||||
}
|
||||
|
@ -18,6 +18,8 @@ import org.bukkit.Location;
|
||||
import org.bukkit.World;
|
||||
import org.bukkit.block.CreatureSpawner;
|
||||
import org.bukkit.craftbukkit.v1_8_R3.CraftChunk;
|
||||
import org.bukkit.craftbukkit.v1_8_R3.block.CraftBlock;
|
||||
import org.bukkit.craftbukkit.v1_8_R3.util.CraftMagicNumbers;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
public class WorldCoreImpl implements WorldCore {
|
||||
@ -86,4 +88,14 @@ public class WorldCoreImpl implements WorldCore {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateAdjacentComparators(org.bukkit.block.Block bukkitBlock) {
|
||||
CraftBlock craftBlock = (CraftBlock) bukkitBlock;
|
||||
CraftChunk craftChunk = (CraftChunk) bukkitBlock.getChunk();
|
||||
net.minecraft.server.v1_8_R3.World nmsWorld = craftChunk.getHandle().getWorld();
|
||||
|
||||
BlockPosition blockPosition = new BlockPosition(craftBlock.getX(), craftBlock.getY(), craftBlock.getZ());
|
||||
nmsWorld.updateAdjacentComparators(blockPosition, CraftMagicNumbers.getBlock(craftBlock));
|
||||
}
|
||||
}
|
||||
|
@ -18,6 +18,8 @@ import org.bukkit.Location;
|
||||
import org.bukkit.World;
|
||||
import org.bukkit.block.CreatureSpawner;
|
||||
import org.bukkit.craftbukkit.v1_9_R1.CraftChunk;
|
||||
import org.bukkit.craftbukkit.v1_9_R1.block.CraftBlock;
|
||||
import org.bukkit.craftbukkit.v1_9_R1.util.CraftMagicNumbers;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
public class WorldCoreImpl implements WorldCore {
|
||||
@ -86,4 +88,14 @@ public class WorldCoreImpl implements WorldCore {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateAdjacentComparators(org.bukkit.block.Block bukkitBlock) {
|
||||
CraftBlock craftBlock = (CraftBlock) bukkitBlock;
|
||||
CraftChunk craftChunk = (CraftChunk) bukkitBlock.getChunk();
|
||||
net.minecraft.server.v1_9_R1.World nmsWorld = craftChunk.getHandle().getWorld();
|
||||
|
||||
BlockPosition blockPosition = new BlockPosition(craftBlock.getX(), craftBlock.getY(), craftBlock.getZ());
|
||||
nmsWorld.updateAdjacentComparators(blockPosition, CraftMagicNumbers.getBlock(craftBlock));
|
||||
}
|
||||
}
|
||||
|
@ -18,6 +18,8 @@ import org.bukkit.Location;
|
||||
import org.bukkit.World;
|
||||
import org.bukkit.block.CreatureSpawner;
|
||||
import org.bukkit.craftbukkit.v1_9_R2.CraftChunk;
|
||||
import org.bukkit.craftbukkit.v1_9_R2.block.CraftBlock;
|
||||
import org.bukkit.craftbukkit.v1_9_R2.util.CraftMagicNumbers;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
public class WorldCoreImpl implements WorldCore {
|
||||
@ -85,4 +87,14 @@ public class WorldCoreImpl implements WorldCore {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateAdjacentComparators(org.bukkit.block.Block bukkitBlock) {
|
||||
CraftBlock craftBlock = (CraftBlock) bukkitBlock;
|
||||
CraftChunk craftChunk = (CraftChunk) bukkitBlock.getChunk();
|
||||
net.minecraft.server.v1_9_R2.World nmsWorld = craftChunk.getHandle().getWorld();
|
||||
|
||||
BlockPosition blockPosition = new BlockPosition(craftBlock.getX(), craftBlock.getY(), craftBlock.getZ());
|
||||
nmsWorld.updateAdjacentComparators(blockPosition, CraftMagicNumbers.getBlock(craftBlock));
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user