Skip to content

Commit f2deb45

Browse files
author
InstanceLabs
committed
Save important configs at stop
1 parent 9754879 commit f2deb45

File tree

2 files changed

+50
-42
lines changed

2 files changed

+50
-42
lines changed

API/src/main/java/com/comze_instancelabs/minigamesapi/MinigamesAPI.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -146,6 +146,7 @@ public void run() {
146146

147147
public void onDisable() {
148148
for (PluginInstance pli : this.pinstances.values()) {
149+
// Reset arenas
149150
for (Arena a : pli.getArenas()) {
150151
if (a != null) {
151152
if (a.isSuccessfullyInit()) {
@@ -166,7 +167,14 @@ public void onDisable() {
166167
}
167168
}
168169
}
170+
171+
// Save important configs
172+
pli.getArenasConfig().saveConfig();
173+
pli.getPlugin().saveConfig();
174+
pli.getMessagesConfig().saveConfig();
175+
pli.getClassesConfig().saveConfig();
169176
}
177+
170178
}
171179

172180
/**

API/src/main/java/com/comze_instancelabs/minigamesapi/config/ArenasConfig.java

Lines changed: 42 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -10,46 +10,46 @@
1010

1111
public class ArenasConfig {
1212

13-
private FileConfiguration arenaConfig = null;
14-
private File arenaFile = null;
15-
private JavaPlugin plugin = null;
16-
17-
public ArenasConfig(JavaPlugin plugin){
18-
this.plugin = plugin;
19-
this.getConfig().options().header("Used for saving arena details.");
20-
this.getConfig().options().copyDefaults(true);
21-
this.saveConfig();
22-
}
23-
24-
public FileConfiguration getConfig() {
25-
if (arenaConfig == null) {
26-
reloadConfig();
27-
}
28-
return arenaConfig;
29-
}
30-
31-
public void saveConfig() {
32-
if (arenaConfig == null || arenaFile == null) {
33-
return;
34-
}
35-
try {
36-
getConfig().save(arenaFile);
37-
} catch (IOException ex) {
38-
39-
}
40-
}
41-
42-
public void reloadConfig() {
43-
if (arenaFile == null) {
44-
arenaFile = new File(plugin.getDataFolder(), "arenas.yml");
45-
}
46-
arenaConfig = YamlConfiguration.loadConfiguration(arenaFile);
47-
48-
InputStream defConfigStream = plugin.getResource("arenas.yml");
49-
if (defConfigStream != null) {
50-
YamlConfiguration defConfig = YamlConfiguration.loadConfiguration(defConfigStream);
51-
arenaConfig.setDefaults(defConfig);
52-
}
53-
}
54-
13+
private FileConfiguration arenaConfig = null;
14+
private File arenaFile = null;
15+
private JavaPlugin plugin = null;
16+
17+
public ArenasConfig(JavaPlugin plugin) {
18+
this.plugin = plugin;
19+
this.getConfig().options().header("Used for saving arena details.");
20+
// this.getConfig().options().copyDefaults(true);
21+
this.saveConfig();
22+
}
23+
24+
public FileConfiguration getConfig() {
25+
if (arenaConfig == null) {
26+
reloadConfig();
27+
}
28+
return arenaConfig;
29+
}
30+
31+
public void saveConfig() {
32+
if (arenaConfig == null || arenaFile == null) {
33+
return;
34+
}
35+
try {
36+
getConfig().save(arenaFile);
37+
} catch (IOException ex) {
38+
39+
}
40+
}
41+
42+
public void reloadConfig() {
43+
if (arenaFile == null) {
44+
arenaFile = new File(plugin.getDataFolder(), "arenas.yml");
45+
}
46+
arenaConfig = YamlConfiguration.loadConfiguration(arenaFile);
47+
48+
InputStream defConfigStream = plugin.getResource("arenas.yml");
49+
if (defConfigStream != null) {
50+
YamlConfiguration defConfig = YamlConfiguration.loadConfiguration(defConfigStream);
51+
arenaConfig.setDefaults(defConfig);
52+
}
53+
}
54+
5555
}

0 commit comments

Comments
 (0)