This commit is contained in:
Louis 2022-08-11 15:53:24 -04:00 committed by GitHub
commit 6f4dc50031
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 31 additions and 19 deletions

View File

@ -206,13 +206,19 @@ public class Limbo {
String mappingName = "mapping.json";
File mappingFile = new File(internalDataFolder, mappingName);
InputStream mappingStreamIn = getClass().getClassLoader().getResourceAsStream(mappingName);
try {
if (!mappingFile.exists()) {
try (InputStream in = getClass().getClassLoader().getResourceAsStream(mappingName)) {
Files.copy(in, mappingFile.toPath());
} catch (IOException e) {
e.printStackTrace();
Files.copy(mappingStreamIn, mappingFile.toPath());
} else {
if (Files.newInputStream(mappingFile.toPath()) != mappingStreamIn) {
mappingFile.delete();
Files.copy(mappingStreamIn, mappingFile.toPath());
}
}
} catch (IOException e){
e.printStackTrace();
}
console.sendMessage("Loading packet id mappings from mapping.json ...");

View File

@ -46,16 +46,22 @@ public class DimensionRegistry {
this.defaultTag = new CompoundTag();
String name = "dimension_registry.json";
File file = new File(Limbo.getInstance().getInternalDataFolder(), name);
if (!file.exists()) {
try (InputStream in = Limbo.class.getClassLoader().getResourceAsStream(name)) {
Files.copy(in, file.toPath());
} catch (IOException e) {
File dimensionRegistryFile = new File(Limbo.getInstance().getInternalDataFolder(), name);
InputStream dimensionRegistryIn = Limbo.class.getClassLoader().getResourceAsStream(name);
try {
if (!dimensionRegistryFile.exists()) {
Files.copy(dimensionRegistryIn, dimensionRegistryFile.toPath());
} else {
if(Files.newInputStream(dimensionRegistryFile.toPath()) != dimensionRegistryIn) {
dimensionRegistryFile.delete();
Files.copy(dimensionRegistryIn, dimensionRegistryFile.toPath());
}
}
} catch (IOException e){
e.printStackTrace();
}
}
this.reg = file;
this.reg = dimensionRegistryFile;
try (InputStreamReader reader = new InputStreamReader(Files.newInputStream(reg.toPath()), StandardCharsets.UTF_8)) {
JSONObject json = (JSONObject) new JSONParser().parse(reader);