Commits
DerFrZocker authored and md_5 committed bb3284a8942
324 324 | |
325 325 | SharedConstants.tryDetectVersion(); |
326 326 | DispenserRegistry.bootStrap(); |
327 327 | |
328 328 | for (Material material : Material.values()) { |
329 329 | if (!material.isLegacy()) { |
330 330 | continue; |
331 331 | } |
332 332 | |
333 333 | // Handle blocks |
334 - | if (material.isBlock()) { |
334 + | if (isBlock(material)) { // Use custom method instead of Material#isBlock since it relies on this being already run |
335 335 | for (byte data = 0; data < 16; data++) { |
336 336 | MaterialData matData = new MaterialData(material, data); |
337 337 | Dynamic blockTag = DataConverterFlattenData.getTag(material.getId() << 4 | data); |
338 338 | blockTag = DataConverterRegistry.getDataFixer().update(DataConverterTypes.BLOCK_STATE, blockTag, 100, CraftMagicNumbers.INSTANCE.getDataVersion()); |
339 339 | // TODO: better skull conversion, chests |
340 340 | if (blockTag.get("Name").asString("").contains("%%FILTER_ME%%")) { |
341 341 | continue; |
342 342 | } |
343 343 | |
344 344 | String name = blockTag.get("Name").asString(""); |
431 431 | for (Map.Entry<Byte, Material> entry : SPAWN_EGGS.entrySet()) { |
432 432 | MaterialData matData = new MaterialData(Material.LEGACY_MONSTER_EGG, entry.getKey()); |
433 433 | Item newMaterial = CraftMagicNumbers.getItem(entry.getValue()); |
434 434 | |
435 435 | materialToItem.put(matData, newMaterial); |
436 436 | itemToMaterial.put(newMaterial, matData); |
437 437 | } |
438 438 | } |
439 439 | } |
440 440 | |
441 + | private static boolean isBlock(Material material) { |
442 + | // From Material#isBlock before the rewrite to ItemType / BlockType |
443 + | // Git hash: 42f6cdf4c5dcdd52a27543403dcd17fb60311621 |
444 + | return 0 <= material.getId() && material.getId() < 256; |
445 + | } |
446 + | |
441 447 | public static void main(String[] args) { |
442 448 | System.err.println(""); |
443 449 | } |
444 450 | } |