diff --git a/pom.xml b/pom.xml
index eb1d9bc..c22cb9b 100644
--- a/pom.xml
+++ b/pom.xml
@@ -7,7 +7,7 @@
me.SuperRonanCraft
BetterRTP
jar
- 3.0.5
+ 3.0.6
1.8
diff --git a/src/main/java/me/SuperRonanCraft/BetterRTP/player/commands/types/CmdEdit.java b/src/main/java/me/SuperRonanCraft/BetterRTP/player/commands/types/CmdEdit.java
index 3d30632..4c51e3d 100644
--- a/src/main/java/me/SuperRonanCraft/BetterRTP/player/commands/types/CmdEdit.java
+++ b/src/main/java/me/SuperRonanCraft/BetterRTP/player/commands/types/CmdEdit.java
@@ -6,7 +6,9 @@ import me.SuperRonanCraft.BetterRTP.references.file.FileBasics;
import me.SuperRonanCraft.BetterRTP.player.commands.RTPCommand;
import me.SuperRonanCraft.BetterRTP.references.worlds.WORLD_TYPE;
import org.bukkit.Bukkit;
+import org.bukkit.Material;
import org.bukkit.World;
+import org.bukkit.block.Block;
import org.bukkit.command.CommandSender;
import org.bukkit.configuration.file.YamlConfiguration;
import org.bukkit.entity.Player;
@@ -29,9 +31,9 @@ public class CmdEdit implements RTPCommand, RTPCommandHelpable { //Edit a worlds
case WORLD:
if (args.length >= 5) {
for (World world : Bukkit.getWorlds()) {
- if (world.getName().toLowerCase().startsWith(args[2].toLowerCase())) {
+ if (world.getName().startsWith(args[2])) {
for (RTP_CMD_EDIT_SUB sub_cmd : RTP_CMD_EDIT_SUB.values())
- if (isAllowedAccess(cmd, sub_cmd) && sub_cmd.name().toLowerCase().startsWith(args[3].toLowerCase())) {
+ if (sub_cmd.name().toLowerCase().startsWith(args[3].toLowerCase())) {
editWorld(sendi, sub_cmd, args[4], args[2]);
return;
}
@@ -39,19 +41,47 @@ public class CmdEdit implements RTPCommand, RTPCommandHelpable { //Edit a worlds
return;
}
}
- BetterRTP.getInstance().getText().getNotExist(sendi, label);
+ BetterRTP.getInstance().getText().getNotExist(sendi, args[2]);
return;
}
usage(sendi, label, cmd);
return;
case DEFAULT:
for (RTP_CMD_EDIT_SUB sub_cmd : RTP_CMD_EDIT_SUB.values())
- if (isAllowedAccess(cmd, sub_cmd) && sub_cmd.name().toLowerCase().startsWith(args[2].toLowerCase())) {
+ if (sub_cmd.name().toLowerCase().startsWith(args[2].toLowerCase())) {
editDefault(sendi, sub_cmd, args[3]);
return;
}
usage(sendi, label, cmd);
return;
+ case WORLD_TYPE:
+ for (World world : Bukkit.getWorlds()) {
+ if (world.getName().startsWith(args[2])) {
+ editWorldtype(sendi, args[2], args[3]);
+ //usage(sendi, label, cmd);
+ return;
+ }
+ }
+ BetterRTP.getInstance().getText().getNotExist(sendi, args[2]);
+ return;
+ case OVERRIDE:
+ for (World world : Bukkit.getWorlds()) {
+ if (world.getName().startsWith(args[2])) {
+ editOverride(sendi, args[2], args[3]);
+ //usage(sendi, label, cmd);
+ return;
+ }
+ }
+ BetterRTP.getInstance().getText().getNotExist(sendi, args[2]);
+ return;
+ case BLACKLISTEDBLOCKS:
+ if (args[2].equalsIgnoreCase("add")) {
+ editBlacklisted(sendi, args[3], true);
+ } else if (args[2].equalsIgnoreCase("remove")) {
+ editBlacklisted(sendi, args[3], false);
+ } else
+ usage(sendi, label, cmd);
+ return;
}
}
} else if (args.length >= 2) {
@@ -110,7 +140,7 @@ public class CmdEdit implements RTPCommand, RTPCommandHelpable { //Edit a worlds
}
private void editDefault(CommandSender sendi, RTP_CMD_EDIT_SUB cmd, String val) {
- Object value = val;
+ Object value;
try {
value = cmd.getResult(val);
} catch (Exception e) {
@@ -133,8 +163,110 @@ public class CmdEdit implements RTPCommand, RTPCommandHelpable { //Edit a worlds
}
}
+ private void editWorldtype(CommandSender sendi, String world, String val) {
+ //sendi.sendMessage("Editting worldtype for world " + world + " to " + val);
+ WORLD_TYPE type;
+ try {
+ type = WORLD_TYPE.valueOf(val.toUpperCase());
+ } catch (Exception e) {
+ //e.printStackTrace();
+ BetterRTP.getInstance().getText().getEditError(sendi);
+ return;
+ }
+
+ FileBasics.FILETYPE file = FileBasics.FILETYPE.CONFIG;
+ YamlConfiguration config = file.getConfig();
+
+ List