9
0
mirror of https://github.com/BX-Team/DivineMC.git synced 2025-12-19 14:59:25 +00:00

remove resendchunks for now

This commit is contained in:
NONPLAYT
2025-07-10 05:26:19 +03:00
parent 626958c7dd
commit f84d8cc1de
2 changed files with 0 additions and 53 deletions

View File

@@ -28,14 +28,12 @@ public final class DivineCommand extends Command {
private static final DivineSubCommand MSPT_SUBCOMMAND = new MSPTCommand();
private static final DivineSubCommand RELOAD_SUBCOMMAND = new ReloadCommand();
private static final DivineSubCommand RESEND_CHUNKS_SUBCOMMAND = new ResendChunksCommand();
private static final DivineSubCommand VERSION_SUBCOMMAND = new VersionCommand();
private static final Map<String, DivineSubCommand> SUBCOMMANDS = Util.make(() -> {
final Map<Set<String>, DivineSubCommand> commands = new HashMap<>();
commands.put(Set.of(MSPTCommand.LITERAL_ARGUMENT), MSPT_SUBCOMMAND);
commands.put(Set.of(ReloadCommand.LITERAL_ARGUMENT), RELOAD_SUBCOMMAND);
commands.put(Set.of(ResendChunksCommand.LITERAL_ARGUMENT), RESEND_CHUNKS_SUBCOMMAND);
commands.put(Set.of(VersionCommand.LITERAL_ARGUMENT), VERSION_SUBCOMMAND);
return commands.entrySet().stream()

View File

@@ -1,51 +0,0 @@
package org.bxteam.divinemc.command.subcommands;
import net.minecraft.network.chat.Component;
import net.minecraft.server.level.ServerPlayer;
import net.minecraft.server.network.PlayerChunkSender;
import net.minecraft.world.level.ChunkPos;
import org.bukkit.Chunk;
import org.bukkit.command.CommandSender;
import org.bukkit.craftbukkit.entity.CraftPlayer;
import org.bukkit.entity.Player;
import org.bukkit.permissions.PermissionDefault;
import org.bxteam.divinemc.command.DivineCommand;
import org.bxteam.divinemc.command.DivineSubCommandPermission;
import org.checkerframework.checker.nullness.qual.NonNull;
import org.checkerframework.framework.qual.DefaultQualifier;
import org.jetbrains.annotations.NotNull;
import java.util.stream.Collectors;
@DefaultQualifier(NonNull.class)
public final class ResendChunksCommand extends DivineSubCommandPermission {
public static final String LITERAL_ARGUMENT = "resendchunks";
public static final String PERM = DivineCommand.BASE_PERM + "." + LITERAL_ARGUMENT;
public ResendChunksCommand() {
super(PERM, PermissionDefault.TRUE);
}
@Override
public boolean execute(final CommandSender sender, final String subCommand, final String[] args) {
if (sender instanceof Player player) {
final ServerPlayer serverPlayer = ((CraftPlayer) player).getHandle();
PlayerChunkSender chunkSender = serverPlayer.connection.chunkSender;
int resent = 0;
for (ChunkPos chunkPos : serverPlayer.getBukkitEntity().getSentChunks().stream().map(ResendChunksCommand::bukkitChunk2ChunkPos).collect(Collectors.toSet())) {
chunkSender.dropChunk(serverPlayer, chunkPos);
PlayerChunkSender.sendChunk(serverPlayer.connection, serverPlayer.level(), serverPlayer.level().getChunk(chunkPos.x, chunkPos.z));
resent++;
}
serverPlayer.sendSystemMessage(Component.literal("Resent " + resent + " chunks to client"));
} else {
sender.sendMessage("Only a player can execute this command.");
}
return true;
}
public static @NotNull ChunkPos bukkitChunk2ChunkPos(@NotNull Chunk chunk) {
return new ChunkPos(chunk.getX(), chunk.getZ());
}
}