Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package LinuxLogo.utils;
- import LinuxLogo.Main;
- import cn.nukkit.block.Block;
- import cn.nukkit.math.Vector3;
- import com.fasterxml.jackson.core.type.TypeReference;
- import com.fasterxml.jackson.databind.ObjectMapper;
- import java.io.*;
- import java.util.HashMap;
- public class Saving {
- public static void firstStart() {
- try {
- ObjectMapper mapper = new ObjectMapper();
- HashMap<Integer, HashMap<String, Integer>> stringGenerators = mapper.readValue(new File(Main.getInstance().getDataFolder() + File.separator + Main.cfg.getString("saveDataAs")), new TypeReference<HashMap<Integer, HashMap<String, Integer>>>(){});
- HashMap<Integer, HashMap<String, Integer>> stringAutoGenerators = mapper.readValue(new File(Main.getInstance().getDataFolder() + File.separator + Main.cfg.getString("saveAutoDataAs")), new TypeReference<HashMap<Integer, HashMap<String, Integer>>>(){});
- for (Integer type : stringGenerators.keySet()) {
- HashMap<Block, Integer> blocks = new HashMap<>();
- for (String string : stringGenerators.get(type).keySet()) {
- int level = stringGenerators.get(type).get(string);
- Block block = Main.getInstance().getServer().getLevelByName(string.split(" ")[3]).getBlock(new Vector3(Integer.parseInt(string.split(" ")[0]), Integer.parseInt(string.split(" ")[1]), Integer.parseInt(string.split(" ")[2])));
- blocks.put(block, level);
- }
- Main.registeredGenerators.put(type, blocks);
- }
- for (Integer type : stringAutoGenerators.keySet()) {
- HashMap<Block, Integer> blocks = new HashMap<>();
- for (String string : stringAutoGenerators.get(type).keySet()) {
- int level = stringAutoGenerators.get(type).get(string);
- Block block = Main.getInstance().getServer().getLevelByName(string.split(" ")[3]).getBlock(new Vector3(Integer.parseInt(string.split(" ")[0]), Integer.parseInt(string.split(" ")[1]), Integer.parseInt(string.split(" ")[2])));
- blocks.put(block, level);
- }
- Main.registeredAutoGenerators.put(type, blocks);
- }
- } catch (FileNotFoundException ignored) { }
- catch (IOException e) {
- e.printStackTrace();
- }
- }
- public static void shutDown() {
- try {
- ObjectMapper mapper = new ObjectMapper();
- HashMap<Integer, HashMap<String, Integer>> stringGenerators = new HashMap<>();
- HashMap<Integer, HashMap<String, Integer>> stringAutoGenerators = new HashMap<>();
- for (Integer type : Main.registeredGenerators.keySet()) {
- HashMap<String, Integer> stringBlocks = new HashMap<>();
- for (Block block : Main.registeredGenerators.get(type).keySet()) {
- int level = Main.registeredGenerators.get(type).get(block);
- String blockLocation = block.getFloorX() + " " + block.getFloorY() + " " + block.getFloorZ() + " " + block.getLevel().getName();
- stringBlocks.put(blockLocation, level);
- }
- stringGenerators.put(type, stringBlocks);
- }
- for (Integer type : Main.registeredAutoGenerators.keySet()) {
- HashMap<String, Integer> stringBlocks = new HashMap<>();
- for (Block block : Main.registeredAutoGenerators.get(type).keySet()) {
- int level = Main.registeredAutoGenerators.get(type).get(block);
- String blockLocation = block.getFloorX() + " " + block.getFloorY() + " " + block.getFloorZ() + " " + block.getLevel().getName();
- stringBlocks.put(blockLocation, level);
- }
- stringAutoGenerators.put(type, stringBlocks);
- }
- mapper.writeValue(new File(Main.getInstance().getDataFolder() + File.separator + Main.cfg.getString("saveDataAs")), stringGenerators);
- mapper.writeValue(new File(Main.getInstance().getDataFolder() + File.separator + Main.cfg.getString("saveAutoDataAs")), stringAutoGenerators);
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement