Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package org.example;
- import net.minecraft.core.BlockPos;
- import net.minecraft.network.protocol.game.ClientboundLevelChunkWithLightPacket;
- import net.minecraft.server.level.ServerChunkCache;
- import net.minecraft.server.level.ServerLevel;
- import net.minecraft.world.level.block.Blocks;
- import net.minecraft.world.level.chunk.LevelChunk;
- import org.bukkit.Bukkit;
- import org.bukkit.craftbukkit.CraftWorld;
- import org.bukkit.craftbukkit.entity.CraftPlayer;
- import org.bukkit.entity.Player;
- import org.bukkit.event.EventHandler;
- import org.bukkit.event.Listener;
- import org.bukkit.event.player.PlayerJoinEvent;
- import org.bukkit.plugin.java.JavaPlugin;
- public class Main extends JavaPlugin implements Listener {
- @Override
- public void onEnable() {
- Bukkit.getPluginManager().registerEvents(this, this);
- }
- @EventHandler
- public void onPlayerJoin(PlayerJoinEvent event) {
- Player player = event.getPlayer();
- sendModifiedChunks(player);
- }
- private void sendModifiedChunks(Player player) {
- ServerLevel nmsWorld = ((CraftWorld) player.getWorld()).getHandle();
- ServerChunkCache chunkProvider = nmsWorld.getChunkSource();
- int playerChunkX = player.getLocation().getBlockX() >> 4;
- int playerChunkZ = player.getLocation().getBlockZ() >> 4;
- for (int x = -5; x <= 5; x++) {
- for (int z = -5; z <= 5; z++) {
- LevelChunk chunk = chunkProvider.getChunk(playerChunkX + x, playerChunkZ + z, false);
- if (chunk != null) {
- // Manipuliere die Blöcke unter Y=-10
- for (int y = -64; y <= -10; y++) {
- for (int bx = 0; bx < 16; bx++) {
- for (int bz = 0; bz < 16; bz++) {
- BlockPos blockPos = new BlockPos(bx, y, bz);
- chunk.setBlockState(blockPos, Blocks.AIR.defaultBlockState(), false);
- }
- }
- }
- ClientboundLevelChunkWithLightPacket packet = new ClientboundLevelChunkWithLightPacket(chunk, nmsWorld.getLightEngine(), null, null, false);
- ((CraftPlayer) player).getHandle().connection.send(packet);
- }
- }
- }
- }
- }
- ----------------------------------------------
- build.gradle:
- plugins {
- id("io.papermc.paperweight.userdev") version "2.0.0-beta.14"
- id("java")
- }
- group = "org.example"
- version = "1.0-SNAPSHOT"
- repositories {
- mavenCentral()
- }
- dependencies {
- testImplementation(platform("org.junit:junit-bom:5.10.0"))
- testImplementation("org.junit.jupiter:junit-jupiter")
- paperweight.paperDevBundle("1.21.4-R0.1-SNAPSHOT")
- }
- tasks.test {
- useJUnitPlatform()
- }
Advertisement
Add Comment
Please, Sign In to add comment