Config and minor improvements
This commit is contained in:
parent
ca2c5aa93e
commit
a166e94656
6 changed files with 114 additions and 3 deletions
55
src/main/java/su/a71/new_soviet/Config.java
Normal file
55
src/main/java/su/a71/new_soviet/Config.java
Normal file
|
@ -0,0 +1,55 @@
|
|||
package su.a71.new_soviet;
|
||||
|
||||
import java.io.*;
|
||||
|
||||
public class Config {
|
||||
private boolean invert_lamps = false;
|
||||
|
||||
public static Config INSTANCE;
|
||||
|
||||
public Config() {
|
||||
INSTANCE = this;
|
||||
}
|
||||
|
||||
public boolean shouldInvertLamps() {
|
||||
return invert_lamps;
|
||||
}
|
||||
|
||||
|
||||
private static void generateDefault() {
|
||||
File file = new File("config/new_soviet.json");
|
||||
if(!file.getParentFile().exists()) {
|
||||
file.getParentFile().mkdirs();
|
||||
}
|
||||
INSTANCE = new Config();
|
||||
try {
|
||||
FileWriter writer = new FileWriter(file);
|
||||
writer.write(NewSoviet.GSON.toJson(INSTANCE));
|
||||
writer.close();
|
||||
} catch (Exception e) {
|
||||
INSTANCE = new Config();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public static void load() {
|
||||
// Generate config if it doesn't exist
|
||||
File file = new File("config/new_soviet.json");
|
||||
if(!file.exists()) {
|
||||
generateDefault();
|
||||
}
|
||||
|
||||
try {
|
||||
BufferedReader reader = new BufferedReader(new FileReader(file));
|
||||
StringBuilder sb = new StringBuilder();
|
||||
String s;
|
||||
while((s = reader.readLine()) != null)
|
||||
sb.append(s);
|
||||
reader.close();
|
||||
|
||||
INSTANCE = NewSoviet.GSON.fromJson(sb.toString(), Config.class);
|
||||
} catch(Exception e) {
|
||||
INSTANCE = new Config();
|
||||
}
|
||||
}
|
||||
}
|
|
@ -26,6 +26,8 @@ public class NewSoviet implements ModInitializer {
|
|||
|
||||
@Override
|
||||
public void onInitialize() {
|
||||
Config.load();
|
||||
|
||||
NSE_Blocks.init();
|
||||
NSE_Items.init();
|
||||
NSE_Custom.init();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue