-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathConfigCommand.java
More file actions
53 lines (44 loc) · 1.58 KB
/
ConfigCommand.java
File metadata and controls
53 lines (44 loc) · 1.58 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
package dansplugins.wildpets.commands;
import org.bukkit.ChatColor;
import org.bukkit.command.CommandSender;
import dansplugins.wildpets.config.ConfigService;
import java.util.ArrayList;
import java.util.Arrays;
/**
* @author Daniel McCoy Stephenson
*/
public class ConfigCommand extends AbstractPluginCommand {
private final ConfigService configService;
public ConfigCommand(ConfigService configService) {
super(new ArrayList<>(Arrays.asList("config")), new ArrayList<>(Arrays.asList("wp.config")));
this.configService = configService;
}
@Override
public boolean execute(CommandSender commandSender) {
commandSender.sendMessage(ChatColor.RED + "Usage: /wp config <set|show> (option) (value)");
return false;
}
public boolean execute(CommandSender sender, String[] args) {
if (args.length == 0) {
sender.sendMessage(ChatColor.RED + "Sub-commands: show, set");
return false;
}
if (args[0].equalsIgnoreCase("show")) {
configService.sendConfigList(sender);
return true;
}
else if (args[0].equalsIgnoreCase("set")) {
if (args.length < 3) {
return execute(sender);
}
String option = args[1];
String value = args[2];
configService.setConfigOption(option, value, sender);
return true;
}
else {
sender.sendMessage(ChatColor.RED + "Sub-commands: show, set");
return false;
}
}
}