@Mod.EventHandler
public void preinit(FMLInitializationEvent event) throws Exception {
initConfig();
initDatabase();
}
public void initConfig() throws IOException {
File file = new File(Minecraft.getMinecraft().gameDir.getAbsolutePath() + "config.conf");
if (!Files.exists(file.toPath())) {
InputStream inputStream = getClass().getResourceAsStream("/config.conf");
assert inputStream != null;
Files.copy(inputStream, file.toPath());
}
}
public void initDatabase() throws Exception {
String url = "jdbc:sqlite:" + Minecraft.getMinecraft().gameDir.getAbsolutePath() + "godtest.db";
try {
Class.forName("org.sqlite.JDBC");
} catch (ClassNotFoundException e) {
throw new RuntimeException(e);
}
File file = new File(Minecraft.getMinecraft().gameDir.getAbsolutePath() + "godtest.db");
if (!file.exists()) {
file.createNewFile();
}
try (Connection conn = DriverManager.getConnection(url)) {
Statement statement = conn.createStatement();
String sql =
"create table if not exists t_quench\n"
+ "(\n"
+ " name varchar(16),\n"
+ " level integer,\n"
+ " add_attack real,\n"
+ " add_health real,\n"
+ " critical_strike integer,\n"
+ " speed real,\n"
+ " thunder_number integer,\n"
+ " thunder_timer integer,\n"
+ " thunder_damage_min real,\n"
+ " thunder_damage_max real,\n"
+ " player_name varchar(16)\n"
+ ");\n"
+ "\n";
statement.executeUpdate(sql);
}
}
crash report