Skip to content

Commit 004be16

Browse files
committed
2.4.1
1 parent 06fc295 commit 004be16

File tree

4 files changed

+41
-9
lines changed

4 files changed

+41
-9
lines changed

src/main/java/svar/ajneb97/MainCommand.java

+29-2
Original file line numberDiff line numberDiff line change
@@ -74,18 +74,41 @@ public void help(CommandSender sender, String[] args, FileConfiguration config,
7474
public void set(CommandSender sender, String[] args, FileConfiguration config, MessagesManager msgManager){
7575
//servervariables set <variable> <value> (Set global variable)
7676
//servervariables set <variable> <value> <player> (Set player variable)
77+
//servervariables set <variable> "<value with spaces>" <player>
7778
if(args.length <= 2){
7879
msgManager.sendMessage(sender,config.getString("messages.commandSetError"),true);
7980
return;
8081
}
8182

8283
String variableName = args[1];
8384
String newValue = args[2];
85+
86+
int valueExtraArgs = 0;
87+
if(newValue.startsWith("\"")){
88+
String newValueWithSpaces = newValue; // "value with spaces"
89+
for(int i=3;i<args.length;i++){
90+
String arg = args[i];
91+
newValueWithSpaces=newValueWithSpaces+" "+arg;
92+
valueExtraArgs++;
93+
if(arg.endsWith("\"")){
94+
break;
95+
}
96+
}
97+
98+
if(!newValueWithSpaces.startsWith("\"") || !newValueWithSpaces.endsWith("\"")){
99+
msgManager.sendMessage(sender,config.getString("messages.commandSetError"),true);
100+
return;
101+
}
102+
103+
newValue = newValueWithSpaces.replace("\"","");
104+
}
105+
106+
84107
String playerName = null;
85108

86109
VariableResult result = null;
87-
if(args.length >= 4 && !args[3].equals("silent:true")){
88-
playerName = args[3];
110+
if(args.length >= 4+valueExtraArgs && !args[3+valueExtraArgs].equals("silent:true")){
111+
playerName = args[3+valueExtraArgs];
89112
result = plugin.getPlayerVariablesManager().setVariable(playerName,variableName,newValue);
90113
}else{
91114
result = plugin.getServerVariablesManager().setVariable(variableName,newValue);
@@ -220,7 +243,11 @@ public void reset(CommandSender sender, String[] args, FileConfiguration config,
220243

221244
private void sendMessageSet(CommandSender sender,VariableResult result,MessagesManager msgManager,FileConfiguration config,
222245
String variableName,String playerName,boolean silent){
246+
boolean silentCommandsHideErrors = plugin.getConfigsManager().getMainConfigManager().isSilentCommandsHideErrors();
223247
if(result.isError()){
248+
if(silent && silentCommandsHideErrors){
249+
return;
250+
}
224251
msgManager.sendMessage(sender,result.getErrorMessage(),true);
225252
}else{
226253
if(silent){

src/main/java/svar/ajneb97/config/MainConfigManager.java

+10-6
Original file line numberDiff line numberDiff line change
@@ -3,25 +3,20 @@
33
import org.bukkit.configuration.file.FileConfiguration;
44
import svar.ajneb97.ServerVariables;
55
import svar.ajneb97.managers.MessagesManager;
6-
import svar.ajneb97.model.structure.Limitations;
7-
import svar.ajneb97.model.structure.ValueType;
8-
import svar.ajneb97.model.structure.Variable;
9-
import svar.ajneb97.model.structure.VariableType;
106
import svar.ajneb97.tasks.DataSaveTask;
117

128
import java.io.IOException;
139
import java.nio.file.Files;
1410
import java.nio.file.Path;
1511
import java.nio.file.Paths;
16-
import java.util.ArrayList;
17-
import java.util.List;
1812

1913
public class MainConfigManager {
2014

2115
private ServerVariables plugin;
2216
private CustomConfig configFile;
2317

2418
private boolean isMySQL;
19+
private boolean silentCommandsHideErrors;
2520

2621
public MainConfigManager(ServerVariables plugin) {
2722
this.plugin = plugin;
@@ -48,6 +43,7 @@ public void configure() {
4843
dataSaveTask.start(config.getInt("config.data_save_time"));
4944

5045
isMySQL = config.getBoolean("config.mysql_database.enabled");
46+
silentCommandsHideErrors = config.getBoolean("config.silent_commands_hide_errors");
5147
}
5248

5349
public CustomConfig getConfigFile() {
@@ -70,6 +66,10 @@ public void checkMessagesUpdate(){
7066
Path pathConfig = Paths.get(configFile.getRoute());
7167
try{
7268
String text = new String(Files.readAllBytes(pathConfig));
69+
if(!text.contains("silent_commands_hide_errors:")){
70+
getConfig().set("config.silent_commands_hide_errors",false);
71+
saveConfig();
72+
}
7373
if(!text.contains("commandResetCorrectAll:")){
7474
getConfig().set("messages.commandResetCorrectAll","&aVariable &7%variable% &areset for &eall players&a.");
7575
saveConfig();
@@ -96,4 +96,8 @@ public void checkMessagesUpdate(){
9696
e.printStackTrace();
9797
}
9898
}
99+
100+
public boolean isSilentCommandsHideErrors() {
101+
return silentCommandsHideErrors;
102+
}
99103
}

src/main/resources/config.yml

+1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
config:
22
data_save_time: 5
3+
silent_commands_hide_errors: false
34
mysql_database:
45
enabled: false
56
host: localhost

src/main/resources/plugin.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
main: svar.ajneb97.ServerVariables
2-
version: 2.3.4
2+
version: 2.4.1
33
name: ServerVariables
44
api-version: 1.13
55
softdepend: [PlaceholderAPI]

0 commit comments

Comments
 (0)