feat(core-bukkit): 添加新方法

This commit is contained in:
2023-12-04 16:16:35 +08:00
parent 4af8714061
commit 345a7e9bfa
2 changed files with 29 additions and 1 deletions

View File

@@ -5,7 +5,7 @@ plugins {
}
group = "cn.hamster3.mc.plugin"
version = "1.1.0"
version = "1.1.1"
subprojects {
apply {

View File

@@ -13,10 +13,12 @@ import org.bukkit.Material;
import org.bukkit.OfflinePlayer;
import org.bukkit.World;
import org.bukkit.block.Block;
import org.bukkit.command.CommandException;
import org.bukkit.configuration.ConfigurationSection;
import org.bukkit.configuration.file.YamlConfiguration;
import org.bukkit.entity.Entity;
import org.bukkit.entity.HumanEntity;
import org.bukkit.entity.Player;
import org.bukkit.inventory.ItemStack;
import org.bukkit.inventory.meta.ItemMeta;
import org.bukkit.inventory.meta.SkullMeta;
@@ -382,6 +384,32 @@ public final class CoreBukkitUtils {
);
}
@SuppressWarnings("CallToPrintStackTrace")
public static void executeCommand(@NotNull Player player, @NotNull String command) {
String[] split = command.split(":", 2);
try {
switch (split[0]) {
case "player": {
Bukkit.dispatchCommand(player, split[1]);
break;
}
case "console": {
Bukkit.dispatchCommand(Bukkit.getConsoleSender(), split[1]);
break;
}
case "op": {
boolean op = player.isOp();
player.setOp(true);
Bukkit.dispatchCommand(player, split[1]);
player.setOp(op);
break;
}
}
} catch (CommandException e) {
e.printStackTrace();
}
}
@NotNull
public static CompletableFuture<String> getPlayerChat(HumanEntity player) {
return CallbackListener.CHATS.computeIfAbsent(player.getUniqueId(), o -> new CompletableFuture<>());