Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package me.iamguus.hgs.essentials.commands;
- import me.iamguus.hgs.core.MainCore;
- import me.iamguus.hgs.core.ranks.RankUtil;
- import org.bukkit.Bukkit;
- import org.bukkit.command.Command;
- import org.bukkit.command.CommandExecutor;
- import org.bukkit.command.CommandSender;
- import org.bukkit.entity.Player;
- public class CommandSpeed implements CommandExecutor {
- public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
- if (!(sender instanceof Player)) {
- sender.sendMessage("§cJij mag deze command niet uitvoeren!");
- }
- Player p = (Player) sender;
- RankUtil ru = new RankUtil(p);
- if (cmd.getName().equalsIgnoreCase("speed")) {
- if (ru.isModeratorOrHigher() || p.isOp()) {
- if (args.length > 0) {
- if (isInt(args[0])) {
- int speed = Integer.parseInt(args[0]);
- if (speed <= 10) {
- if (args.length == 1) {
- if (p.isOnGround()) {
- p.setFlySpeed(speed / 10);
- p.sendMessage(MainCore.prefix + "§7Jouw vliegsnelheid is nu §6" + speed);
- return true;
- } else {
- p.setWalkSpeed(speed / 10);
- p.sendMessage(MainCore.prefix + "§7Jouw loopsnelheid is nu §6" + speed);
- return true;
- }
- } else
- if (args.length == 2) {
- if (SpeedType.getSpeedTypeByName(args[1]) != null) {
- SpeedType s = SpeedType.getSpeedTypeByName(args[1]);
- switch (s) {
- case FLY:
- p.setFlySpeed(speed / 10);
- p.sendMessage(MainCore.prefix + "§7Jouw vliegsnelheid is nu §6" + speed);
- break;
- case WALK:
- p.setWalkSpeed(speed / 10);
- p.sendMessage(MainCore.prefix + "§7Jouw loopsnelheid is nu §6" + speed);
- break;
- }
- return true;
- } else {
- p.sendMessage("§c" + args[1] + " is geen snelheidsoort!");
- }
- } else
- if (args.length == 3) {
- Player target = Bukkit.getPlayer(args[2]);
- if (target != null) {
- if (SpeedType.getSpeedTypeByName(args[1]) != null) {
- SpeedType s = SpeedType.getSpeedTypeByName(args[1]);
- switch (s) {
- case FLY:
- target.setFlySpeed(speed / 10);
- target.sendMessage(MainCore.prefix + "§7Jouw vliegsnelheid is nu §6" + speed);
- p.sendMessage(MainCore.prefix + "§6" + target.getName() + " §7zijn vliegsnelheid is nu §6" + speed);
- break;
- case WALK:
- target.setWalkSpeed(speed / 10);
- target.sendMessage(MainCore.prefix + "§7Jouw loopsnelheid is nu §6" + speed);
- p.sendMessage(MainCore.prefix + "§6" + target.getName() + " §7zijn loopsnelheid is nu §6" + speed);
- break;
- }
- return true;
- } else {
- p.sendMessage("§c" + args[1] + " is geen snelheidsoort!");
- }
- } else {
- p.sendMessage("§cSpeler " + args[2] + " is niet gevonden!");
- return false;
- }
- } else {
- p.sendMessage("§cVerkeerde syntax; gebruik /" + label + " <speed> [type;lopen|vliegen] [player]");
- return false;
- }
- } else {
- p.sendMessage("§cGetal is meer als 10, getal kan alleen lager zijn als 10!");
- return false;
- }
- } else {
- p.sendMessage("§c" + args[0] + " is geen getal!");
- return false;
- }
- } else {
- p.sendMessage("§cVerkeerde syntax; gebruik /" + label + " <speed> [type;lopen|vliegen] [player]");
- return false;
- }
- }
- }
- return false;
- }
- public boolean isInt(String test) {
- try {
- Integer.parseInt(test);
- } catch(NumberFormatException e) {
- return false;
- }
- return true;
- }
- }
- enum SpeedType {
- WALK ("lopen"), FLY("vliegen");
- private String name;
- private SpeedType(String name) {
- this.name = name;
- }
- public String getName() {
- return name;
- }
- public static SpeedType getSpeedTypeByName(String name) {
- for (SpeedType s : SpeedType.values()) {
- if (s.getName().contains(name) || s.getName().equalsIgnoreCase(name)) {
- return s;
- }
- }
- return null;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement