mirror of
https://github.com/kaboomserver/extras.git
synced 2025-02-11 03:29:50 +00:00
parent
29207ef8b9
commit
1a0c094f4a
14 changed files with 233 additions and 205 deletions
|
@ -20,9 +20,10 @@ public class CommandBroadcastMM implements CommandExecutor {
|
|||
if (args.length == 0) {
|
||||
sender.sendMessage(Component
|
||||
.text("Usage: /" + label + " <message ..>", NamedTextColor.RED));
|
||||
} else {
|
||||
Bukkit.broadcast(MINI_MESSAGE.deserialize(String.join(" ", args)));
|
||||
return true;
|
||||
}
|
||||
|
||||
Bukkit.broadcast(MINI_MESSAGE.deserialize(String.join(" ", args)));
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -18,10 +18,11 @@ public final class CommandBroadcastVanilla implements CommandExecutor {
|
|||
sender.sendMessage(Component
|
||||
.text("Usage: /" + label + " <message ..>",
|
||||
NamedTextColor.RED));
|
||||
} else {
|
||||
Command.broadcastCommandMessage(sender, ChatColor.translateAlternateColorCodes(
|
||||
'&', String.join(" ", args)));
|
||||
return true;
|
||||
}
|
||||
|
||||
Command.broadcastCommandMessage(sender, ChatColor.translateAlternateColorCodes(
|
||||
'&', String.join(" ", args)));
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -19,13 +19,14 @@ public final class CommandConsole implements CommandExecutor {
|
|||
sender.sendMessage(Component
|
||||
.text("Usage: /" + label + " <message ..>",
|
||||
NamedTextColor.RED));
|
||||
} else {
|
||||
Bukkit.dispatchCommand(
|
||||
Bukkit.getConsoleSender(),
|
||||
"minecraft:say " + ChatColor.translateAlternateColorCodes(
|
||||
'&', String.join(" ", args))
|
||||
);
|
||||
return true;
|
||||
}
|
||||
|
||||
Bukkit.dispatchCommand(
|
||||
Bukkit.getConsoleSender(),
|
||||
"minecraft:say " + ChatColor.translateAlternateColorCodes(
|
||||
'&', String.join(" ", args))
|
||||
);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -20,21 +20,23 @@ public final class CommandEnchantAll implements CommandExecutor {
|
|||
if (sender instanceof ConsoleCommandSender) {
|
||||
sender.sendMessage(Component
|
||||
.text("Command has to be run by a player"));
|
||||
} else {
|
||||
final Player player = (Player) sender;
|
||||
final ItemStack item = player.getInventory().getItemInMainHand();
|
||||
|
||||
if (Material.AIR.equals(item.getType())) {
|
||||
player.sendMessage(Component
|
||||
.text("Please hold an item in your hand to enchant it"));
|
||||
} else {
|
||||
for (Enchantment enchantment : Enchantment.values()) {
|
||||
item.addUnsafeEnchantment(enchantment, Short.MAX_VALUE);
|
||||
}
|
||||
player.sendMessage(Component
|
||||
.text("I killed Martin."));
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
final Player player = (Player) sender;
|
||||
final ItemStack item = player.getInventory().getItemInMainHand();
|
||||
|
||||
if (Material.AIR.equals(item.getType())) {
|
||||
player.sendMessage(Component
|
||||
.text("Please hold an item in your hand to enchant it"));
|
||||
return true;
|
||||
}
|
||||
|
||||
for (Enchantment enchantment : Enchantment.values()) {
|
||||
item.addUnsafeEnchantment(enchantment, Short.MAX_VALUE);
|
||||
}
|
||||
player.sendMessage(Component
|
||||
.text("I killed Martin."));
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -18,22 +18,22 @@ public class CommandGetJSON implements CommandExecutor {
|
|||
if (args.length == 0) {
|
||||
sender.sendMessage(Component
|
||||
.text("Usage: /" + label + " <message ..>", NamedTextColor.RED));
|
||||
} else {
|
||||
final String message = String.join(" ", args);
|
||||
Component createdComponent = LegacyComponentSerializer
|
||||
.legacyAmpersand()
|
||||
.deserialize(message);
|
||||
|
||||
String asJson = GsonComponentSerializer.gson().serialize(createdComponent);
|
||||
|
||||
Component feedback = Component.empty()
|
||||
.append(Component.text("Your component as JSON (click to copy): "))
|
||||
.append(Component.text(asJson, NamedTextColor.GREEN))
|
||||
.clickEvent(ClickEvent.copyToClipboard(asJson));
|
||||
|
||||
sender.sendMessage(feedback);
|
||||
return true;
|
||||
}
|
||||
|
||||
final String message = String.join(" ", args);
|
||||
Component createdComponent = LegacyComponentSerializer
|
||||
.legacyAmpersand()
|
||||
.deserialize(message);
|
||||
|
||||
String asJson = GsonComponentSerializer.gson().serialize(createdComponent);
|
||||
|
||||
Component feedback = Component.empty()
|
||||
.append(Component.text("Your component as JSON (click to copy): "))
|
||||
.append(Component.text(asJson, NamedTextColor.GREEN))
|
||||
.clickEvent(ClickEvent.copyToClipboard(asJson));
|
||||
|
||||
sender.sendMessage(feedback);
|
||||
return true;
|
||||
}
|
||||
}
|
|
@ -31,26 +31,30 @@ public final class CommandJumpscare implements CommandExecutor {
|
|||
sender.sendMessage(Component
|
||||
.text("Usage: /" + label + " <player>",
|
||||
NamedTextColor.RED));
|
||||
} else {
|
||||
if (args[0].equals("*") || args[0].equals("**")) {
|
||||
for (Player onlinePlayer : Bukkit.getOnlinePlayers()) {
|
||||
createJumpscare(onlinePlayer);
|
||||
}
|
||||
sender.sendMessage(Component
|
||||
.text("Successfully created jumpscare for every player"));
|
||||
} else {
|
||||
final Player target = Bukkit.getPlayer(args[0]);
|
||||
if (target != null) {
|
||||
createJumpscare(target);
|
||||
sender.sendMessage(Component
|
||||
.text("Successfully created jumpscare for player \""
|
||||
+ target.getName() + "\""));
|
||||
} else {
|
||||
sender.sendMessage(Component
|
||||
.text("Player \"" + args[0] + "\" not found"));
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
if (args[0].equals("*") || args[0].equals("**")) {
|
||||
for (Player onlinePlayer : Bukkit.getOnlinePlayers()) {
|
||||
createJumpscare(onlinePlayer);
|
||||
}
|
||||
sender.sendMessage(Component
|
||||
.text("Successfully created jumpscare for every player"));
|
||||
return true;
|
||||
}
|
||||
|
||||
final Player target = Bukkit.getPlayer(args[0]);
|
||||
|
||||
if (target == null) {
|
||||
sender.sendMessage(Component
|
||||
.text("Player \"" + args[0] + "\" not found"));
|
||||
return true;
|
||||
}
|
||||
|
||||
createJumpscare(target);
|
||||
sender.sendMessage(Component
|
||||
.text("Successfully created jumpscare for player \""
|
||||
+ target.getName() + "\""));
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -43,10 +43,11 @@ public final class CommandKaboom implements CommandExecutor {
|
|||
}
|
||||
|
||||
player.sendMessage(Component.text("Forgive me :c"));
|
||||
} else {
|
||||
player.getInventory().setItemInMainHand(new ItemStack(Material.CAKE));
|
||||
player.sendMessage(Component.text("Have a nice day :)"));
|
||||
return true;
|
||||
}
|
||||
|
||||
player.getInventory().setItemInMainHand(new ItemStack(Material.CAKE));
|
||||
player.sendMessage(Component.text("Have a nice day :)"));
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -28,32 +28,36 @@ public final class CommandPrefix implements CommandExecutor {
|
|||
if (sender instanceof ConsoleCommandSender) {
|
||||
sender.sendMessage(Component
|
||||
.text("Command has to be run by a player"));
|
||||
} else {
|
||||
final Player player = (Player) sender;
|
||||
return true;
|
||||
}
|
||||
|
||||
try {
|
||||
if (args.length == 0) {
|
||||
player.sendMessage(Component
|
||||
.text("Usage: /" + label + " <prefix|off>",
|
||||
NamedTextColor.RED));
|
||||
} else if ("off".equalsIgnoreCase(args[0])) {
|
||||
PREFIX_CONFIG.set(player.getUniqueId().toString(), null);
|
||||
PREFIX_CONFIG.save(PREFIX_CONFIG_FILE);
|
||||
player.sendMessage(Component
|
||||
.text("You no longer have a tag"));
|
||||
} else {
|
||||
PREFIX_CONFIG.set(player.getUniqueId().toString(), String.join(" ", args));
|
||||
PREFIX_CONFIG.save(PREFIX_CONFIG_FILE);
|
||||
player.sendMessage(Component.text("You now have the tag: ")
|
||||
.append(LegacyComponentSerializer.legacyAmpersand()
|
||||
.deserialize(String.join(" ", args))));
|
||||
}
|
||||
} catch (Exception exception) {
|
||||
final Player player = (Player) sender;
|
||||
|
||||
if (args.length == 0) {
|
||||
player.sendMessage(Component
|
||||
.text("Usage: /" + label + " <prefix|off>",
|
||||
NamedTextColor.RED));
|
||||
return true;
|
||||
}
|
||||
|
||||
try {
|
||||
if ("off".equalsIgnoreCase(args[0])) {
|
||||
PREFIX_CONFIG.set(player.getUniqueId().toString(), null);
|
||||
PREFIX_CONFIG.save(PREFIX_CONFIG_FILE);
|
||||
player.sendMessage(Component
|
||||
.text("Something went wrong while saving the prefix. " +
|
||||
"Please check console."));
|
||||
exception.printStackTrace();
|
||||
.text("You no longer have a tag"));
|
||||
} else {
|
||||
PREFIX_CONFIG.set(player.getUniqueId().toString(), String.join(" ", args));
|
||||
PREFIX_CONFIG.save(PREFIX_CONFIG_FILE);
|
||||
player.sendMessage(Component.text("You now have the tag: ")
|
||||
.append(LegacyComponentSerializer.legacyAmpersand()
|
||||
.deserialize(String.join(" ", args))));
|
||||
}
|
||||
} catch (Exception exception) {
|
||||
player.sendMessage(Component
|
||||
.text("Something went wrong while saving the prefix. " +
|
||||
"Please check console."));
|
||||
exception.printStackTrace();
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
|
|
@ -25,22 +25,26 @@ public final class CommandPumpkin implements CommandExecutor {
|
|||
sender.sendMessage(Component
|
||||
.text("Usage: /" + label + " <player>",
|
||||
NamedTextColor.RED));
|
||||
} else {
|
||||
if (args[0].equals("*") || args[0].equals("**")) {
|
||||
for (Player onlinePlayer : Bukkit.getOnlinePlayers()) {
|
||||
placePumpkin(onlinePlayer);
|
||||
}
|
||||
sender.sendMessage("Everyone is now a pumpkin");
|
||||
} else {
|
||||
final Player target = Bukkit.getPlayer(args[0]);
|
||||
if (target != null) {
|
||||
placePumpkin(target);
|
||||
sender.sendMessage("Player \"" + target.getName() + "\" is now a pumpkin");
|
||||
} else {
|
||||
sender.sendMessage("Player \"" + args[0] + "\" not found");
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
if (args[0].equals("*") || args[0].equals("**")) {
|
||||
for (Player onlinePlayer : Bukkit.getOnlinePlayers()) {
|
||||
placePumpkin(onlinePlayer);
|
||||
}
|
||||
sender.sendMessage("Everyone is now a pumpkin");
|
||||
return true;
|
||||
}
|
||||
|
||||
final Player target = Bukkit.getPlayer(args[0]);
|
||||
|
||||
if (target == null) {
|
||||
sender.sendMessage("Player \"" + args[0] + "\" not found");
|
||||
return true;
|
||||
}
|
||||
|
||||
placePumpkin(target);
|
||||
sender.sendMessage("Player \"" + target.getName() + "\" is now a pumpkin");
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -22,28 +22,32 @@ public final class CommandSkin implements CommandExecutor {
|
|||
if (sender instanceof ConsoleCommandSender) {
|
||||
sender.sendMessage(Component
|
||||
.text("Command has to be run by a player"));
|
||||
} else {
|
||||
final Player player = (Player) sender;
|
||||
|
||||
final long millisDifference = System.currentTimeMillis() - millis;
|
||||
|
||||
if (args.length == 0) {
|
||||
player.sendMessage(Component
|
||||
.text("Usage: /" + label + " <username>",
|
||||
NamedTextColor.RED));
|
||||
} else if (millisDifference <= 2000) {
|
||||
player.sendMessage(Component
|
||||
.text("Please wait a few seconds before changing your skin"));
|
||||
} else {
|
||||
final String name = args[0];
|
||||
final boolean shouldSendMessage = true;
|
||||
|
||||
SkinDownloader skinDownloader = new SkinDownloader();
|
||||
skinDownloader.applySkin(player, name, shouldSendMessage);
|
||||
|
||||
millis = System.currentTimeMillis();
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
final Player player = (Player) sender;
|
||||
final long millisDifference = System.currentTimeMillis() - millis;
|
||||
|
||||
if (args.length == 0) {
|
||||
player.sendMessage(Component
|
||||
.text("Usage: /" + label + " <username>",
|
||||
NamedTextColor.RED));
|
||||
return true;
|
||||
}
|
||||
|
||||
if (millisDifference <= 2000) {
|
||||
player.sendMessage(Component
|
||||
.text("Please wait a few seconds before changing your skin"));
|
||||
return true;
|
||||
}
|
||||
|
||||
final String name = args[0];
|
||||
final boolean shouldSendMessage = true;
|
||||
|
||||
SkinDownloader skinDownloader = new SkinDownloader();
|
||||
skinDownloader.applySkin(player, name, shouldSendMessage);
|
||||
|
||||
millis = System.currentTimeMillis();
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -22,28 +22,29 @@ public final class CommandSpawn implements CommandExecutor {
|
|||
if (sender instanceof ConsoleCommandSender) {
|
||||
sender.sendMessage(Component
|
||||
.text("Command has to be run by a player"));
|
||||
} else {
|
||||
final Player player = (Player) sender;
|
||||
final World defaultWorld = Bukkit.getWorld("world");
|
||||
final World world = (defaultWorld == null) ? Bukkit.getWorlds().get(0) : defaultWorld;
|
||||
final Location spawnLocation = world.getSpawnLocation();
|
||||
final int maxWorldHeight = 256;
|
||||
|
||||
for (double y = spawnLocation.getY(); y <= maxWorldHeight; y++) {
|
||||
final Location yLocation = new Location(world, spawnLocation.getX(), y,
|
||||
spawnLocation.getZ());
|
||||
final Block coordBlock = world.getBlockAt(yLocation);
|
||||
|
||||
if (!coordBlock.getType().isSolid()
|
||||
&& !coordBlock.getRelative(BlockFace.UP).getType().isSolid()) {
|
||||
player.teleportAsync(yLocation);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
player.sendMessage(Component
|
||||
.text("Successfully moved to spawn"));
|
||||
return true;
|
||||
}
|
||||
|
||||
final Player player = (Player) sender;
|
||||
final World defaultWorld = Bukkit.getWorld("world");
|
||||
final World world = (defaultWorld == null) ? Bukkit.getWorlds().get(0) : defaultWorld;
|
||||
final Location spawnLocation = world.getSpawnLocation();
|
||||
final int maxWorldHeight = 256;
|
||||
|
||||
for (double y = spawnLocation.getY(); y <= maxWorldHeight; y++) {
|
||||
final Location yLocation = new Location(world, spawnLocation.getX(), y,
|
||||
spawnLocation.getZ());
|
||||
final Block coordBlock = world.getBlockAt(yLocation);
|
||||
|
||||
if (!coordBlock.getType().isSolid()
|
||||
&& !coordBlock.getRelative(BlockFace.UP).getType().isSolid()) {
|
||||
player.teleportAsync(yLocation);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
player.sendMessage(Component
|
||||
.text("Successfully moved to spawn"));
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -21,27 +21,28 @@ public final class CommandSpidey implements CommandExecutor {
|
|||
if (sender instanceof ConsoleCommandSender) {
|
||||
sender.sendMessage(Component
|
||||
.text("Command has to be run by a player"));
|
||||
} else {
|
||||
final Player player = (Player) sender;
|
||||
final World world = player.getWorld();
|
||||
final Vector start = player.getEyeLocation().toVector();
|
||||
final Vector direction = player.getEyeLocation().getDirection();
|
||||
final int yOffset = 0;
|
||||
final int distance = 50;
|
||||
return true;
|
||||
}
|
||||
|
||||
final BlockIterator blockIterator = new BlockIterator(
|
||||
world,
|
||||
start,
|
||||
direction,
|
||||
yOffset,
|
||||
distance
|
||||
);
|
||||
final Player player = (Player) sender;
|
||||
final World world = player.getWorld();
|
||||
final Vector start = player.getEyeLocation().toVector();
|
||||
final Vector direction = player.getEyeLocation().getDirection();
|
||||
final int yOffset = 0;
|
||||
final int distance = 50;
|
||||
|
||||
while (blockIterator.hasNext()
|
||||
&& (Material.AIR.equals(blockIterator.next().getType())
|
||||
|| Material.CAVE_AIR.equals(blockIterator.next().getType()))) {
|
||||
blockIterator.next().setType(Material.COBWEB);
|
||||
}
|
||||
final BlockIterator blockIterator = new BlockIterator(
|
||||
world,
|
||||
start,
|
||||
direction,
|
||||
yOffset,
|
||||
distance
|
||||
);
|
||||
|
||||
while (blockIterator.hasNext()
|
||||
&& (Material.AIR.equals(blockIterator.next().getType())
|
||||
|| Material.CAVE_AIR.equals(blockIterator.next().getType()))) {
|
||||
blockIterator.next().setType(Material.COBWEB);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
|
|
@ -19,13 +19,14 @@ public final class CommandTellraw implements CommandExecutor {
|
|||
if (args.length == 0) {
|
||||
sender.sendMessage(Component
|
||||
.text("Usage: /" + label + " <message ..>", NamedTextColor.RED));
|
||||
} else {
|
||||
final Component message = LegacyComponentSerializer.legacyAmpersand()
|
||||
.deserialize(String.join(" ", args));
|
||||
return true;
|
||||
}
|
||||
|
||||
for (Player onlinePlayer: Bukkit.getOnlinePlayers()) {
|
||||
onlinePlayer.sendMessage(message);
|
||||
}
|
||||
final Component message = LegacyComponentSerializer.legacyAmpersand()
|
||||
.deserialize(String.join(" ", args));
|
||||
|
||||
for (Player onlinePlayer: Bukkit.getOnlinePlayers()) {
|
||||
onlinePlayer.sendMessage(message);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
|
|
@ -24,45 +24,48 @@ public final class CommandUsername implements CommandExecutor {
|
|||
if (sender instanceof ConsoleCommandSender) {
|
||||
sender.sendMessage(Component
|
||||
.text("Command has to be run by a player"));
|
||||
} else {
|
||||
final Player player = (Player) sender;
|
||||
|
||||
final String nameColor = ChatColor.translateAlternateColorCodes(
|
||||
'&', String.join(" ", args));
|
||||
final String name = nameColor.substring(0, Math.min(16, nameColor.length()));
|
||||
|
||||
final long millisDifference = System.currentTimeMillis() - millis;
|
||||
|
||||
if (args.length == 0) {
|
||||
player.sendMessage(Component
|
||||
.text("Usage: /" + label + " <username>",
|
||||
NamedTextColor.RED));
|
||||
} else if (name.equals(player.getName())) {
|
||||
player.sendMessage(Component
|
||||
.text("You already have the username \"" + name + "\""));
|
||||
} else if (millisDifference <= 2000) {
|
||||
player.sendMessage(Component
|
||||
.text("Please wait a few seconds before changing your username."));
|
||||
} else {
|
||||
if (Bukkit.getPlayer(name) != null) {
|
||||
player.sendMessage(Component
|
||||
.text("A player with that username is already logged in."));
|
||||
return true;
|
||||
}
|
||||
|
||||
final PlayerProfile profile = player.getPlayerProfile();
|
||||
|
||||
//FIXME Marked for removal
|
||||
profile.setName(name);
|
||||
|
||||
player.setPlayerProfile(profile);
|
||||
|
||||
millis = System.currentTimeMillis();
|
||||
|
||||
player.sendMessage(Component
|
||||
.text("Successfully set your username to \"" + name + "\""));
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
final Player player = (Player) sender;
|
||||
final String nameColor = ChatColor.translateAlternateColorCodes(
|
||||
'&', String.join(" ", args));
|
||||
final String name = nameColor.substring(0, Math.min(16, nameColor.length()));
|
||||
final long millisDifference = System.currentTimeMillis() - millis;
|
||||
|
||||
if (args.length == 0) {
|
||||
player.sendMessage(Component
|
||||
.text("Usage: /" + label + " <username>",
|
||||
NamedTextColor.RED));
|
||||
return true;
|
||||
}
|
||||
|
||||
if (name.equals(player.getName())) {
|
||||
player.sendMessage(Component
|
||||
.text("You already have the username \"" + name + "\""));
|
||||
return true;
|
||||
}
|
||||
|
||||
if (millisDifference <= 2000) {
|
||||
player.sendMessage(Component
|
||||
.text("Please wait a few seconds before changing your username."));
|
||||
return true;
|
||||
}
|
||||
|
||||
if (Bukkit.getPlayer(name) != null) {
|
||||
player.sendMessage(Component
|
||||
.text("A player with that username is already logged in."));
|
||||
return true;
|
||||
}
|
||||
|
||||
final PlayerProfile profile = player.getPlayerProfile();
|
||||
|
||||
profile.setName(name); // FIXME: Marked for removal
|
||||
player.setPlayerProfile(profile);
|
||||
millis = System.currentTimeMillis();
|
||||
|
||||
player.sendMessage(Component
|
||||
.text("Successfully set your username to \"" + name + "\""));
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue