Use guard clauses when possible

Closes #322
This commit is contained in:
kaboom 2022-10-16 03:08:32 +03:00
parent 29207ef8b9
commit 1a0c094f4a
14 changed files with 233 additions and 205 deletions

View File

@ -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;
}
}

View File

@ -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;
}
}

View File

@ -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;
}
}

View File

@ -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;
}
}

View File

@ -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;
}
}
}

View File

@ -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;
}
}

View File

@ -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;
}
}

View File

@ -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;
}

View File

@ -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;
}
}

View File

@ -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;
}
}

View File

@ -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;
}
}

View File

@ -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;
}

View File

@ -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;
}

View File

@ -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;
}
}