summaryrefslogtreecommitdiff
path: root/src/main/java/net/benjidial/nswp/commands/TPA.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/net/benjidial/nswp/commands/TPA.java')
-rw-r--r--src/main/java/net/benjidial/nswp/commands/TPA.java40
1 files changed, 40 insertions, 0 deletions
diff --git a/src/main/java/net/benjidial/nswp/commands/TPA.java b/src/main/java/net/benjidial/nswp/commands/TPA.java
new file mode 100644
index 0000000..e160fc0
--- /dev/null
+++ b/src/main/java/net/benjidial/nswp/commands/TPA.java
@@ -0,0 +1,40 @@
+package net.benjidial.nswp.commands;
+
+import net.benjidial.nswp.Database;
+
+import org.bukkit.entity.Player;
+import org.bukkit.Bukkit;
+
+import java.sql.SQLException;
+import java.util.List;
+
+public class TPA extends PlayerCommand {
+
+ public List<String> getTabCompletions(Player sender, String[] args) throws SQLException {
+ return filterByArg(Database.getOnlineTPAAllowedFrom(sender), args, 0);
+ }
+
+ public boolean doCommand(Player sender, String[] args) throws SQLException {
+
+ if (args.length != 1)
+ return false;
+
+ Player other = Bukkit.getPlayer(args[0]);
+ if (other == null) {
+ sender.sendMessage("Could not find " + args[0] + ". Are they online?");
+ return true;
+ }
+
+ if (!Database.isTPAAllowed(sender, other)) {
+ sender.sendMessage("You are not allowed to teleport to " + other.getName() + ".");
+ sender.sendMessage("They must first run /wtpallow " + sender.getName());
+ return true;
+ }
+
+ Database.setWBack(sender, sender.getLocation());
+ sender.teleport(other);
+ return true;
+
+ }
+
+}