Properly sort & put commands in their spots
This commit is contained in:
@@ -1,10 +1,7 @@
|
|||||||
package io.github.lncvrt.lncvrtbox;
|
package io.github.lncvrt.lncvrtbox;
|
||||||
|
|
||||||
import com.earth2me.essentials.Essentials;
|
import com.earth2me.essentials.Essentials;
|
||||||
import com.sk89q.worldedit.EditSession;
|
import io.github.lncvrt.lncvrtbox.commands.*;
|
||||||
import com.sk89q.worldedit.MaxChangedBlocksException;
|
|
||||||
import com.sk89q.worldedit.function.pattern.RandomPattern;
|
|
||||||
import com.sk89q.worldedit.world.block.BlockState;
|
|
||||||
import io.github.lncvrt.lncvrtbox.events.*;
|
import io.github.lncvrt.lncvrtbox.events.*;
|
||||||
import net.luckperms.api.LuckPerms;
|
import net.luckperms.api.LuckPerms;
|
||||||
import net.luckperms.api.LuckPermsProvider;
|
import net.luckperms.api.LuckPermsProvider;
|
||||||
@@ -13,24 +10,16 @@ import net.luckperms.api.node.Node;
|
|||||||
import net.luckperms.api.node.NodeType;
|
import net.luckperms.api.node.NodeType;
|
||||||
import net.luckperms.api.node.types.SuffixNode;
|
import net.luckperms.api.node.types.SuffixNode;
|
||||||
import org.bukkit.*;
|
import org.bukkit.*;
|
||||||
import org.bukkit.command.Command;
|
|
||||||
import org.bukkit.command.CommandSender;
|
|
||||||
import org.bukkit.command.TabExecutor;
|
import org.bukkit.command.TabExecutor;
|
||||||
import org.bukkit.entity.Player;
|
import org.bukkit.entity.Player;
|
||||||
import org.bukkit.event.Listener;
|
import org.bukkit.event.Listener;
|
||||||
import org.bukkit.event.player.PlayerItemConsumeEvent;
|
|
||||||
import org.bukkit.inventory.Inventory;
|
import org.bukkit.inventory.Inventory;
|
||||||
import org.bukkit.plugin.Plugin;
|
import org.bukkit.plugin.Plugin;
|
||||||
import org.bukkit.plugin.java.JavaPlugin;
|
import org.bukkit.plugin.java.JavaPlugin;
|
||||||
import org.jetbrains.annotations.NotNull;
|
|
||||||
import org.json.simple.JSONObject;
|
import org.json.simple.JSONObject;
|
||||||
import org.json.simple.parser.JSONParser;
|
import org.json.simple.parser.JSONParser;
|
||||||
import org.json.simple.parser.ParseException;
|
import org.json.simple.parser.ParseException;
|
||||||
import org.bukkit.inventory.ItemStack;
|
import org.bukkit.inventory.ItemStack;
|
||||||
import com.sk89q.worldedit.WorldEdit;
|
|
||||||
import com.sk89q.worldedit.bukkit.BukkitAdapter;
|
|
||||||
import com.sk89q.worldedit.math.BlockVector3;
|
|
||||||
import com.sk89q.worldedit.regions.CuboidRegion;
|
|
||||||
|
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
|
|
||||||
@@ -38,14 +27,11 @@ import java.io.*;
|
|||||||
import java.util.*;
|
import java.util.*;
|
||||||
import java.util.logging.Level;
|
import java.util.logging.Level;
|
||||||
|
|
||||||
import static org.bukkit.ChatColor.*;
|
|
||||||
import static org.bukkit.ChatColor.translateAlternateColorCodes;
|
|
||||||
|
|
||||||
public final class LncvrtBox extends JavaPlugin implements Listener, TabExecutor {
|
public final class LncvrtBox extends JavaPlugin implements Listener, TabExecutor {
|
||||||
|
|
||||||
private LuckPerms luckPerms;
|
private LuckPerms luckPerms;
|
||||||
public final Map<UUID, Boolean> autoCompressStatus = new HashMap<>();
|
public final Map<UUID, Boolean> autoCompressStatus = new HashMap<>();
|
||||||
private String serverRules;
|
public String serverRules;
|
||||||
public boolean chatLocked = false;
|
public boolean chatLocked = false;
|
||||||
private Essentials essentials;
|
private Essentials essentials;
|
||||||
|
|
||||||
@@ -124,13 +110,14 @@ public final class LncvrtBox extends JavaPlugin implements Listener, TabExecutor
|
|||||||
|
|
||||||
loadAutoCompressStatus();
|
loadAutoCompressStatus();
|
||||||
loadServerRules();
|
loadServerRules();
|
||||||
Objects.requireNonNull(getCommand("autocompress")).setExecutor(this);
|
Objects.requireNonNull(getCommand("autocompress")).setExecutor(new Autocompress(this));
|
||||||
Objects.requireNonNull(getCommand("sky")).setExecutor(this);
|
Objects.requireNonNull(getCommand("clearchat")).setExecutor(new Clearchat());
|
||||||
Objects.requireNonNull(getCommand("rules")).setExecutor(this);
|
Objects.requireNonNull(getCommand("fix")).setExecutor(new Fix());
|
||||||
Objects.requireNonNull(getCommand("link")).setExecutor(this);
|
Objects.requireNonNull(getCommand("link")).setExecutor(new Link());
|
||||||
Objects.requireNonNull(getCommand("unlink")).setExecutor(this);
|
Objects.requireNonNull(getCommand("lockchat")).setExecutor(new Lockchat(this));
|
||||||
Objects.requireNonNull(getCommand("clearchat")).setExecutor(this);
|
Objects.requireNonNull(getCommand("rules")).setExecutor(new Rules(this));
|
||||||
Objects.requireNonNull(getCommand("settag")).setExecutor(this);
|
Objects.requireNonNull(getCommand("sky")).setExecutor(new Sky());
|
||||||
|
Objects.requireNonNull(getCommand("Unlink")).setExecutor(new Unlink());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -268,137 +255,6 @@ public final class LncvrtBox extends JavaPlugin implements Listener, TabExecutor
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean onCommand(@NotNull CommandSender sender, @NotNull Command command, String label, String[] args) {
|
|
||||||
if (label.equalsIgnoreCase("autocompress")) {
|
|
||||||
if (!(sender instanceof Player player)) {
|
|
||||||
sender.sendMessage(RED + "This command can only be executed by a player.");
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
UUID playerId = player.getUniqueId();
|
|
||||||
|
|
||||||
boolean currentStatus = autoCompressStatus.getOrDefault(playerId, false);
|
|
||||||
autoCompressStatus.put(playerId, !currentStatus);
|
|
||||||
|
|
||||||
if (!currentStatus) {
|
|
||||||
player.sendMessage(GREEN + "Auto-compress enabled.");
|
|
||||||
} else {
|
|
||||||
player.sendMessage(RED + "Auto-compress disabled.");
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
} else if (label.equalsIgnoreCase("sky")) {
|
|
||||||
if (sender instanceof Player player) {
|
|
||||||
player.performCommand("warp sky");
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
} else if (label.equalsIgnoreCase("rules")) {
|
|
||||||
if (serverRules != null && !serverRules.isEmpty()) {
|
|
||||||
sender.sendMessage(translateAlternateColorCodes('&', serverRules));
|
|
||||||
} else {
|
|
||||||
sender.sendMessage("%sServer rules are currently unavailable.".formatted(RED));
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
} else if (label.equalsIgnoreCase("link")) {
|
|
||||||
if (sender instanceof Player player) {
|
|
||||||
player.performCommand("discord link");
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
} else if (label.equalsIgnoreCase("unlink")) {
|
|
||||||
if (sender instanceof Player player) {
|
|
||||||
player.performCommand("discord unlink");
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
} else if (label.equalsIgnoreCase("clearchat")) {
|
|
||||||
if (sender instanceof Player player) {
|
|
||||||
if (!player.hasPermission("lncvrtbox.clearchat")) {
|
|
||||||
player.sendMessage("%sYou do not have permission to use this command.".formatted(RED));
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
for (int i = 0; i < 1000; i++) {
|
|
||||||
Bukkit.broadcastMessage("");
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
} else if (label.equalsIgnoreCase("settag")) {
|
|
||||||
sender.sendMessage(RED + "Setting tags has been removed. Sorry!");
|
|
||||||
return true;
|
|
||||||
} else if (label.equalsIgnoreCase("lockchat")) {
|
|
||||||
if (sender.hasPermission("chatlock.lock")) {
|
|
||||||
chatLocked = !chatLocked;
|
|
||||||
sender.sendMessage("Chat " + (chatLocked ? "locked." : "unlocked."));
|
|
||||||
} else {
|
|
||||||
sender.sendMessage("You do not have permission to use this command.");
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
} else if (label.equalsIgnoreCase("fix")) {
|
|
||||||
//TODO: make selectionwall4 (front wall)
|
|
||||||
com.sk89q.worldedit.world.World world = BukkitAdapter.adapt(Bukkit.getWorld("world"));
|
|
||||||
CuboidRegion selectionground1 = new CuboidRegion(world, BlockVector3.at(131, 100, 105), BlockVector3.at(-67, 100, -123));
|
|
||||||
CuboidRegion selectionwall1 = new CuboidRegion(world, BlockVector3.at(-66, 139, 105), BlockVector3.at(130, 101, 105));
|
|
||||||
CuboidRegion selectionwall2 = new CuboidRegion(world, BlockVector3.at(-67, 139, 104), BlockVector3.at(-67, 101, -122));
|
|
||||||
CuboidRegion selectionwall3 = new CuboidRegion(world, BlockVector3.at(-67, 139, -123), BlockVector3.at(130, 101, -123));
|
|
||||||
|
|
||||||
try (EditSession editSession = WorldEdit.getInstance().getEditSessionFactory().getEditSession(world, -1)) {
|
|
||||||
RandomPattern pat = new RandomPattern();
|
|
||||||
BlockState deepslate_tiles = BukkitAdapter.adapt(Material.DEEPSLATE_TILES.createBlockData());
|
|
||||||
BlockState deepslate_bricks = BukkitAdapter.adapt(Material.DEEPSLATE_BRICKS.createBlockData());
|
|
||||||
pat.add(deepslate_tiles, 0.5);
|
|
||||||
pat.add(deepslate_bricks, 0.5);
|
|
||||||
|
|
||||||
editSession.setBlocks(selectionground1, pat);
|
|
||||||
} catch (MaxChangedBlocksException ex) {
|
|
||||||
ex.printStackTrace();
|
|
||||||
}
|
|
||||||
|
|
||||||
try (EditSession editSession = WorldEdit.getInstance().getEditSessionFactory().getEditSession(world, -1)) {
|
|
||||||
RandomPattern pat = new RandomPattern();
|
|
||||||
BlockState gold_block = BukkitAdapter.adapt(Material.GOLD_BLOCK.createBlockData());
|
|
||||||
BlockState raw_gold_block = BukkitAdapter.adapt(Material.RAW_GOLD_BLOCK.createBlockData());
|
|
||||||
BlockState yellow_concrete = BukkitAdapter.adapt(Material.YELLOW_CONCRETE.createBlockData());
|
|
||||||
pat.add(gold_block, 0.33333333333);
|
|
||||||
pat.add(raw_gold_block, 0.33333333333);
|
|
||||||
pat.add(yellow_concrete, 0.33333333333);
|
|
||||||
|
|
||||||
editSession.setBlocks(selectionwall1, pat);
|
|
||||||
} catch (MaxChangedBlocksException ex) {
|
|
||||||
ex.printStackTrace();
|
|
||||||
}
|
|
||||||
|
|
||||||
try (EditSession editSession = WorldEdit.getInstance().getEditSessionFactory().getEditSession(world, -1)) {
|
|
||||||
RandomPattern pat = new RandomPattern();
|
|
||||||
BlockState lapis_block = BukkitAdapter.adapt(Material.LAPIS_BLOCK.createBlockData());
|
|
||||||
BlockState blue_concrete_powder = BukkitAdapter.adapt(Material.BLUE_CONCRETE_POWDER.createBlockData());
|
|
||||||
BlockState blue_concrete = BukkitAdapter.adapt(Material.BLUE_CONCRETE.createBlockData());
|
|
||||||
pat.add(lapis_block, 0.33333333333);
|
|
||||||
pat.add(blue_concrete_powder, 0.33333333333);
|
|
||||||
pat.add(blue_concrete, 0.33333333333);
|
|
||||||
|
|
||||||
editSession.setBlocks(selectionwall2, pat);
|
|
||||||
} catch (MaxChangedBlocksException ex) {
|
|
||||||
ex.printStackTrace();
|
|
||||||
}
|
|
||||||
|
|
||||||
try (EditSession editSession = WorldEdit.getInstance().getEditSessionFactory().getEditSession(world, -1)) {
|
|
||||||
RandomPattern pat = new RandomPattern();
|
|
||||||
BlockState lime_concrete = BukkitAdapter.adapt(Material.LIME_CONCRETE.createBlockData());
|
|
||||||
BlockState melon = BukkitAdapter.adapt(Material.MELON.createBlockData());
|
|
||||||
BlockState green_glazed_terracotta = BukkitAdapter.adapt(Material.GREEN_GLAZED_TERRACOTTA.createBlockData());
|
|
||||||
pat.add(lime_concrete, 0.33333333333);
|
|
||||||
pat.add(melon, 0.33333333333);
|
|
||||||
pat.add(green_glazed_terracotta, 0.33333333333);
|
|
||||||
|
|
||||||
editSession.setBlocks(selectionwall3, pat);
|
|
||||||
} catch (MaxChangedBlocksException ex) {
|
|
||||||
ex.printStackTrace();
|
|
||||||
}
|
|
||||||
sender.sendMessage("fixed!");
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean isAfk(Player player) {
|
public boolean isAfk(Player player) {
|
||||||
com.earth2me.essentials.User user = essentials.getUser(player);
|
com.earth2me.essentials.User user = essentials.getUser(player);
|
||||||
return user.isAfk();
|
return user.isAfk();
|
||||||
|
|||||||
@@ -0,0 +1,36 @@
|
|||||||
|
package io.github.lncvrt.lncvrtbox.commands;
|
||||||
|
|
||||||
|
import io.github.lncvrt.lncvrtbox.LncvrtBox;
|
||||||
|
import org.bukkit.command.Command;
|
||||||
|
import org.bukkit.command.CommandExecutor;
|
||||||
|
import org.bukkit.command.CommandSender;
|
||||||
|
import org.bukkit.entity.Player;
|
||||||
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
|
||||||
|
import java.util.UUID;
|
||||||
|
|
||||||
|
import static org.bukkit.ChatColor.GREEN;
|
||||||
|
import static org.bukkit.ChatColor.RED;
|
||||||
|
|
||||||
|
public record Autocompress(LncvrtBox plugin) implements CommandExecutor {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean onCommand(@NotNull CommandSender sender, @NotNull Command command, @NotNull String label, String[] args) {
|
||||||
|
if (!(sender instanceof Player player)) {
|
||||||
|
sender.sendMessage(RED + "This command can only be executed by a player.");
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
UUID playerId = player.getUniqueId();
|
||||||
|
|
||||||
|
boolean currentStatus = plugin.autoCompressStatus.getOrDefault(playerId, false);
|
||||||
|
plugin.autoCompressStatus.put(playerId, !currentStatus);
|
||||||
|
|
||||||
|
if (!currentStatus) {
|
||||||
|
player.sendMessage(GREEN + "Auto-compress enabled.");
|
||||||
|
} else {
|
||||||
|
player.sendMessage(RED + "Auto-compress disabled.");
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,28 @@
|
|||||||
|
package io.github.lncvrt.lncvrtbox.commands;
|
||||||
|
|
||||||
|
import org.bukkit.Bukkit;
|
||||||
|
import org.bukkit.command.Command;
|
||||||
|
import org.bukkit.command.CommandExecutor;
|
||||||
|
import org.bukkit.command.CommandSender;
|
||||||
|
import org.bukkit.entity.Player;
|
||||||
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
|
||||||
|
import static org.bukkit.ChatColor.RED;
|
||||||
|
|
||||||
|
public class Clearchat implements CommandExecutor {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean onCommand(@NotNull CommandSender sender, @NotNull Command command, @NotNull String label, String[] args) {
|
||||||
|
if (sender instanceof Player player) {
|
||||||
|
if (!player.hasPermission("lncvrtbox.clearchat")) {
|
||||||
|
player.sendMessage("%sYou do not have permission to use this command.".formatted(RED));
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
for (int i = 0; i < 1000; i++) {
|
||||||
|
Bukkit.broadcastMessage("");
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
86
src/main/java/io/github/lncvrt/lncvrtbox/commands/Fix.java
Normal file
86
src/main/java/io/github/lncvrt/lncvrtbox/commands/Fix.java
Normal file
@@ -0,0 +1,86 @@
|
|||||||
|
package io.github.lncvrt.lncvrtbox.commands;
|
||||||
|
|
||||||
|
import com.sk89q.worldedit.EditSession;
|
||||||
|
import com.sk89q.worldedit.MaxChangedBlocksException;
|
||||||
|
import com.sk89q.worldedit.WorldEdit;
|
||||||
|
import com.sk89q.worldedit.bukkit.BukkitAdapter;
|
||||||
|
import com.sk89q.worldedit.function.pattern.RandomPattern;
|
||||||
|
import com.sk89q.worldedit.math.BlockVector3;
|
||||||
|
import com.sk89q.worldedit.regions.CuboidRegion;
|
||||||
|
import com.sk89q.worldedit.world.block.BlockState;
|
||||||
|
import org.bukkit.Bukkit;
|
||||||
|
import org.bukkit.Material;
|
||||||
|
import org.bukkit.command.Command;
|
||||||
|
import org.bukkit.command.CommandExecutor;
|
||||||
|
import org.bukkit.command.CommandSender;
|
||||||
|
import org.bukkit.entity.Player;
|
||||||
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
|
||||||
|
public class Fix implements CommandExecutor {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean onCommand(@NotNull CommandSender sender, @NotNull Command command, @NotNull String label, String[] args) {
|
||||||
|
//TODO: make selectionwall4 (front wall)
|
||||||
|
com.sk89q.worldedit.world.World world = BukkitAdapter.adapt(Bukkit.getWorld("world"));
|
||||||
|
CuboidRegion selectionground1 = new CuboidRegion(world, BlockVector3.at(131, 100, 105), BlockVector3.at(-67, 100, -123));
|
||||||
|
CuboidRegion selectionwall1 = new CuboidRegion(world, BlockVector3.at(-66, 139, 105), BlockVector3.at(130, 101, 105));
|
||||||
|
CuboidRegion selectionwall2 = new CuboidRegion(world, BlockVector3.at(-67, 139, 104), BlockVector3.at(-67, 101, -122));
|
||||||
|
CuboidRegion selectionwall3 = new CuboidRegion(world, BlockVector3.at(-67, 139, -123), BlockVector3.at(130, 101, -123));
|
||||||
|
|
||||||
|
try (EditSession editSession = WorldEdit.getInstance().getEditSessionFactory().getEditSession(world, -1)) {
|
||||||
|
RandomPattern pat = new RandomPattern();
|
||||||
|
BlockState deepslate_tiles = BukkitAdapter.adapt(Material.DEEPSLATE_TILES.createBlockData());
|
||||||
|
BlockState deepslate_bricks = BukkitAdapter.adapt(Material.DEEPSLATE_BRICKS.createBlockData());
|
||||||
|
pat.add(deepslate_tiles, 0.5);
|
||||||
|
pat.add(deepslate_bricks, 0.5);
|
||||||
|
|
||||||
|
editSession.setBlocks(selectionground1, pat);
|
||||||
|
} catch (MaxChangedBlocksException ex) {
|
||||||
|
ex.printStackTrace();
|
||||||
|
}
|
||||||
|
|
||||||
|
try (EditSession editSession = WorldEdit.getInstance().getEditSessionFactory().getEditSession(world, -1)) {
|
||||||
|
RandomPattern pat = new RandomPattern();
|
||||||
|
BlockState gold_block = BukkitAdapter.adapt(Material.GOLD_BLOCK.createBlockData());
|
||||||
|
BlockState raw_gold_block = BukkitAdapter.adapt(Material.RAW_GOLD_BLOCK.createBlockData());
|
||||||
|
BlockState yellow_concrete = BukkitAdapter.adapt(Material.YELLOW_CONCRETE.createBlockData());
|
||||||
|
pat.add(gold_block, 0.33333333333);
|
||||||
|
pat.add(raw_gold_block, 0.33333333333);
|
||||||
|
pat.add(yellow_concrete, 0.33333333333);
|
||||||
|
|
||||||
|
editSession.setBlocks(selectionwall1, pat);
|
||||||
|
} catch (MaxChangedBlocksException ex) {
|
||||||
|
ex.printStackTrace();
|
||||||
|
}
|
||||||
|
|
||||||
|
try (EditSession editSession = WorldEdit.getInstance().getEditSessionFactory().getEditSession(world, -1)) {
|
||||||
|
RandomPattern pat = new RandomPattern();
|
||||||
|
BlockState lapis_block = BukkitAdapter.adapt(Material.LAPIS_BLOCK.createBlockData());
|
||||||
|
BlockState blue_concrete_powder = BukkitAdapter.adapt(Material.BLUE_CONCRETE_POWDER.createBlockData());
|
||||||
|
BlockState blue_concrete = BukkitAdapter.adapt(Material.BLUE_CONCRETE.createBlockData());
|
||||||
|
pat.add(lapis_block, 0.33333333333);
|
||||||
|
pat.add(blue_concrete_powder, 0.33333333333);
|
||||||
|
pat.add(blue_concrete, 0.33333333333);
|
||||||
|
|
||||||
|
editSession.setBlocks(selectionwall2, pat);
|
||||||
|
} catch (MaxChangedBlocksException ex) {
|
||||||
|
ex.printStackTrace();
|
||||||
|
}
|
||||||
|
|
||||||
|
try (EditSession editSession = WorldEdit.getInstance().getEditSessionFactory().getEditSession(world, -1)) {
|
||||||
|
RandomPattern pat = new RandomPattern();
|
||||||
|
BlockState lime_concrete = BukkitAdapter.adapt(Material.LIME_CONCRETE.createBlockData());
|
||||||
|
BlockState melon = BukkitAdapter.adapt(Material.MELON.createBlockData());
|
||||||
|
BlockState green_glazed_terracotta = BukkitAdapter.adapt(Material.GREEN_GLAZED_TERRACOTTA.createBlockData());
|
||||||
|
pat.add(lime_concrete, 0.33333333333);
|
||||||
|
pat.add(melon, 0.33333333333);
|
||||||
|
pat.add(green_glazed_terracotta, 0.33333333333);
|
||||||
|
|
||||||
|
editSession.setBlocks(selectionwall3, pat);
|
||||||
|
} catch (MaxChangedBlocksException ex) {
|
||||||
|
ex.printStackTrace();
|
||||||
|
}
|
||||||
|
sender.sendMessage("fixed!");
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
18
src/main/java/io/github/lncvrt/lncvrtbox/commands/Link.java
Normal file
18
src/main/java/io/github/lncvrt/lncvrtbox/commands/Link.java
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
package io.github.lncvrt.lncvrtbox.commands;
|
||||||
|
|
||||||
|
import org.bukkit.command.Command;
|
||||||
|
import org.bukkit.command.CommandExecutor;
|
||||||
|
import org.bukkit.command.CommandSender;
|
||||||
|
import org.bukkit.entity.Player;
|
||||||
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
|
||||||
|
public class Link implements CommandExecutor {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean onCommand(@NotNull CommandSender sender, @NotNull Command command, @NotNull String label, String[] args) {
|
||||||
|
if (sender instanceof Player player) {
|
||||||
|
player.performCommand("discord link");
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,24 @@
|
|||||||
|
package io.github.lncvrt.lncvrtbox.commands;
|
||||||
|
|
||||||
|
import io.github.lncvrt.lncvrtbox.LncvrtBox;
|
||||||
|
import org.bukkit.command.Command;
|
||||||
|
import org.bukkit.command.CommandExecutor;
|
||||||
|
import org.bukkit.command.CommandSender;
|
||||||
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
|
||||||
|
import static org.bukkit.ChatColor.RED;
|
||||||
|
import static org.bukkit.ChatColor.translateAlternateColorCodes;
|
||||||
|
|
||||||
|
public record Lockchat(LncvrtBox plugin) implements CommandExecutor {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean onCommand(@NotNull CommandSender sender, @NotNull Command command, @NotNull String label, String[] args) {
|
||||||
|
if (sender.hasPermission("chatlock.lock")) {
|
||||||
|
plugin.chatLocked = !plugin.chatLocked;
|
||||||
|
sender.sendMessage("Chat " + (plugin.chatLocked ? "locked." : "unlocked."));
|
||||||
|
} else {
|
||||||
|
sender.sendMessage("You do not have permission to use this command.");
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
22
src/main/java/io/github/lncvrt/lncvrtbox/commands/Rules.java
Normal file
22
src/main/java/io/github/lncvrt/lncvrtbox/commands/Rules.java
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
package io.github.lncvrt.lncvrtbox.commands;
|
||||||
|
|
||||||
|
import io.github.lncvrt.lncvrtbox.LncvrtBox;
|
||||||
|
import org.bukkit.command.Command;
|
||||||
|
import org.bukkit.command.CommandExecutor;
|
||||||
|
import org.bukkit.command.CommandSender;
|
||||||
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
|
||||||
|
import static org.bukkit.ChatColor.*;
|
||||||
|
|
||||||
|
public record Rules(LncvrtBox plugin) implements CommandExecutor {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean onCommand(@NotNull CommandSender sender, @NotNull Command command, @NotNull String label, String[] args) {
|
||||||
|
if (plugin.serverRules != null && !plugin.serverRules.isEmpty()) {
|
||||||
|
sender.sendMessage(translateAlternateColorCodes('&', plugin.serverRules));
|
||||||
|
} else {
|
||||||
|
sender.sendMessage("%sServer rules are currently unavailable.".formatted(RED));
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
18
src/main/java/io/github/lncvrt/lncvrtbox/commands/Sky.java
Normal file
18
src/main/java/io/github/lncvrt/lncvrtbox/commands/Sky.java
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
package io.github.lncvrt.lncvrtbox.commands;
|
||||||
|
|
||||||
|
import org.bukkit.command.Command;
|
||||||
|
import org.bukkit.command.CommandExecutor;
|
||||||
|
import org.bukkit.command.CommandSender;
|
||||||
|
import org.bukkit.entity.Player;
|
||||||
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
|
||||||
|
public class Sky implements CommandExecutor {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean onCommand(@NotNull CommandSender sender, @NotNull Command command, @NotNull String label, String[] args) {
|
||||||
|
if (sender instanceof Player player) {
|
||||||
|
player.performCommand("warp sky");
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,18 @@
|
|||||||
|
package io.github.lncvrt.lncvrtbox.commands;
|
||||||
|
|
||||||
|
import org.bukkit.command.Command;
|
||||||
|
import org.bukkit.command.CommandExecutor;
|
||||||
|
import org.bukkit.command.CommandSender;
|
||||||
|
import org.bukkit.entity.Player;
|
||||||
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
|
||||||
|
public class Unlink implements CommandExecutor {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean onCommand(@NotNull CommandSender sender, @NotNull Command command, @NotNull String label, String[] args) {
|
||||||
|
if (sender instanceof Player player) {
|
||||||
|
player.performCommand("discord link");
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -7,34 +7,31 @@ depend:
|
|||||||
- LuckPerms
|
- LuckPerms
|
||||||
- Essentials
|
- Essentials
|
||||||
commands:
|
commands:
|
||||||
settag:
|
autocompress:
|
||||||
description: Command has been removed
|
description: Auto compressor
|
||||||
usage: /settag
|
usage: /autocompress
|
||||||
sky:
|
|
||||||
description: Teleports you to sky world
|
|
||||||
usage: /sky
|
|
||||||
clearchat:
|
clearchat:
|
||||||
description: Clears chat
|
description: Clears chat
|
||||||
usage: /clearchat
|
usage: /clearchat
|
||||||
aliases:
|
aliases:
|
||||||
- cc
|
- cc
|
||||||
permission: lncvrtbox.clearchat
|
permission: lncvrtbox.clearchat
|
||||||
link:
|
|
||||||
description: Links your discord
|
|
||||||
usage: /link
|
|
||||||
unlink:
|
|
||||||
description: Unlinks your discord
|
|
||||||
usage: /unlink
|
|
||||||
autocompress:
|
|
||||||
description: Auto compressor
|
|
||||||
usage: /autocompress
|
|
||||||
rules:
|
|
||||||
description: Rules
|
|
||||||
usage: /rules
|
|
||||||
lockchat:
|
|
||||||
description: Lockchat
|
|
||||||
usage: /lockchat
|
|
||||||
fix:
|
fix:
|
||||||
description: fix
|
description: fix
|
||||||
permission: lncvrtbox.admin
|
permission: lncvrtbox.admin
|
||||||
usage: /fix
|
usage: /fix
|
||||||
|
link:
|
||||||
|
description: Links your discord
|
||||||
|
usage: /link
|
||||||
|
lockchat:
|
||||||
|
description: Lockchat
|
||||||
|
usage: /lockchat
|
||||||
|
rules:
|
||||||
|
description: Rules
|
||||||
|
usage: /rules
|
||||||
|
sky:
|
||||||
|
description: Teleports you to sky world
|
||||||
|
usage: /sky
|
||||||
|
unlink:
|
||||||
|
description: Unlinks your discord
|
||||||
|
usage: /unlink
|
||||||
Reference in New Issue
Block a user