Advertisement
JackOUT

Untitled

Oct 15th, 2022
870
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.87 KB | None | 0 0
  1.         public static List<LevelData> deserialize(final SerializedMap map) {
  2.             //final Map<Integer, LevelData> levels = new HashMap<>();
  3.             final List<LevelData> levelDataList = new ArrayList<>();
  4.  
  5.             for (final Map.Entry<String, Object> entry : map.entrySet()) {
  6.                 final int level = Integer.parseInt(entry.getKey());
  7.                 final LevelData levelData = new LevelData(level);
  8.                 final SerializedMap levelSettings = SerializedMap.of(entry.getValue());
  9.  
  10.                 System.out.println("Level: " + level);
  11.                 System.out.println("Map: " + map);
  12.                 System.out.println("Entry: " + levelSettings);
  13.  
  14.                 levelSettings.setRemoveOnGet(true);
  15.  
  16.                 levelData.range = levelSettings.getInteger("Range");
  17.                 Valid.checkNotNull(levelData.range, "Missing 'Range' key from level: " + map);
  18.  
  19.                 levelData.health = levelSettings.getInteger("Health");
  20.                 Valid.checkNotNull(levelData.health, "Missing 'Health' key from level: " + map);
  21.  
  22.                 levelData.price = levelSettings.getDouble("Price");
  23.                 Valid.checkNotNull(levelData.price, "Missing 'Price' key from level: " + map);
  24.  
  25.                 levelData.laserEnabled = levelSettings.getBoolean("Enable_Laser_Pointer");
  26.                 Valid.checkNotNull(levelData.laserEnabled, "Missing 'Enable_Laser_Pointers' key from level: " + map);
  27.  
  28.                 levelData.laserDamage = levelSettings.getDouble("Laser_Pointer_Damage");
  29.                 Valid.checkNotNull(levelData.price, "Missing 'Laser_Pointer_Damage' key from level: " + map);
  30.  
  31.                 levelData.lootChances = levelSettings.getTupleList("Loot_Drops", ItemStack.class, Double.class);
  32.                 Valid.checkNotNull(levelData.lootChances, "Missing 'Loot_Drops' key from level: " + map);
  33.  
  34.                 Valid.checkBoolean(levelSettings.isEmpty(), "Found unrecognized level settings: " + map);
  35.  
  36.                 //levels.put(level, levelData);
  37.                 levelDataList.add(level - 1, levelData);
  38.             }
  39.  
  40.             System.out.println("Levels map: " + levelDataList);
  41.  
  42.             return levelDataList;
  43.         }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement