feat: 添加管理员指令

This commit is contained in:
2024-08-08 03:41:50 +08:00
parent e4425c0b1b
commit 5724e5e662
16 changed files with 720 additions and 29 deletions

View File

@@ -6,18 +6,26 @@ import cn.hamster3.mc.plugin.ball.bukkit.listener.BallBukkitListener;
import cn.hamster3.mc.plugin.ball.bukkit.listener.UpdatePlayerInfoListener;
import cn.hamster3.mc.plugin.ball.bukkit.util.BallBukkitUtils;
import cn.hamster3.mc.plugin.ball.common.api.BallAPI;
import cn.hamster3.mc.plugin.ball.common.command.BallCommand;
import cn.hamster3.mc.plugin.ball.common.command.adapt.AdaptCommandSender;
import cn.hamster3.mc.plugin.ball.common.entity.BallPlayerInfo;
import cn.hamster3.mc.plugin.ball.common.event.BallActions;
import cn.hamster3.mc.plugin.ball.common.event.server.ServerOnlineEvent;
import cn.hamster3.mc.plugin.core.bukkit.api.CoreBukkitAPI;
import cn.hamster3.mc.plugin.core.common.config.YamlConfig;
import lombok.Getter;
import net.kyori.adventure.text.Component;
import org.bukkit.Bukkit;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.plugin.java.JavaPlugin;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.StandardCopyOption;
import java.util.List;
import java.util.Objects;
import java.util.logging.Level;
import java.util.logging.Logger;
@@ -129,4 +137,35 @@ public class HamsterBallPlugin extends JavaPlugin {
long time = System.currentTimeMillis() - start;
logger.info("仓鼠球已关闭,总计耗时 " + time + " ms");
}
@Override
public boolean onCommand(@NotNull CommandSender sender, @NotNull Command command, @NotNull String label, @NotNull String[] args) {
return BallCommand.INSTANCE.onCommand(new AdaptCommandSender() {
@Override
public boolean hasPermission(@NotNull String permission) {
return sender.hasPermission(permission);
}
@Override
public void sendMessage(@NotNull Component message) {
CoreBukkitAPI.getInstance().getAudienceProvider().sender(sender).sendMessage(message);
}
}, args);
}
@Nullable
@Override
public List<String> onTabComplete(@NotNull CommandSender sender, @NotNull Command command, @NotNull String alias, @NotNull String[] args) {
return BallCommand.INSTANCE.onTabComplete(new AdaptCommandSender() {
@Override
public boolean hasPermission(@NotNull String permission) {
return sender.hasPermission(permission);
}
@Override
public void sendMessage(@NotNull Component message) {
CoreBukkitAPI.getInstance().getAudienceProvider().sender(sender).sendMessage(message);
}
}, args);
}
}

View File

@@ -21,3 +21,11 @@ depend:
softdepend:
- PlaceholderAPI
commands:
hamster-ball:
aliases: [ ball ]
permissions:
hamster.ball.admin:
default: op