summaryrefslogtreecommitdiff
path: root/src/main/java/net/benjidial/nswp/commands
diff options
context:
space:
mode:
authorhim <edorta@uncc.edu>2023-02-11 18:23:09 -0500
committerBenji Dial <benji@noreply.git.benjidial.net>2023-02-11 18:23:09 -0500
commitef65431d405a713b138a55054e78497883f27e54 (patch)
treefa74375079e43b30599cd5cc9b1e816af37413b8 /src/main/java/net/benjidial/nswp/commands
parent166ebd3195907e540076e6e0af04e68a3c3525ee (diff)
downloadnew-simple-waypoints-ef65431d405a713b138a55054e78497883f27e54.tar.gz
Add waypoint renaming
Co-authored-by: Flarp <flurpdadurp@gmail.com> Reviewed-on: https://git.benjidial.net/benji/nswp/pulls/1 Co-authored-by: him <edorta@uncc.edu> Co-committed-by: him <edorta@uncc.edu>
Diffstat (limited to 'src/main/java/net/benjidial/nswp/commands')
-rw-r--r--src/main/java/net/benjidial/nswp/commands/RenameWaypoint.java37
1 files changed, 37 insertions, 0 deletions
diff --git a/src/main/java/net/benjidial/nswp/commands/RenameWaypoint.java b/src/main/java/net/benjidial/nswp/commands/RenameWaypoint.java
new file mode 100644
index 0000000..44af06c
--- /dev/null
+++ b/src/main/java/net/benjidial/nswp/commands/RenameWaypoint.java
@@ -0,0 +1,37 @@
+package net.benjidial.nswp.commands;
+
+import net.benjidial.nswp.Database;
+import net.benjidial.nswp.Waypoint;
+
+import org.bukkit.entity.Player;
+
+import java.sql.SQLException;
+
+public class RenameWaypoint extends WaypointCommand {
+ public CompletionType getCompletionType() {
+ return CompletionType.Waypoint;
+ }
+
+ @Override
+ public boolean body(Player player, String[] args) throws SQLException {
+ if (args.length != 2) return false;
+
+ if (Database.lookupWaypoint(player, args[1]) != null) {
+ player.sendMessage("Waypoint with that name already exists!");
+ return true;
+ }
+
+ Waypoint waypoint = Database.lookupWaypoint(player, args[0]);
+
+ if (waypoint == null) {
+ player.sendMessage("No waypoint with that name.");
+ } else {
+ Database.deleteWaypoint(player, args[0]);
+ waypoint.name = args[1];
+ Database.addWaypoint(player, waypoint);
+ }
+
+ return true;
+ }
+
+}