minecraft-data icon indicating copy to clipboard operation
minecraft-data copied to clipboard

New blocks data

Open rom1504 opened this issue 9 years ago • 5 comments

  • durability
  • transparency
  • blast resistance

see https://github.com/PrismarineJS/node-minecraft-data/issues/3

Related to https://github.com/PrismarineJS/minecraft-data/issues/52

rom1504 avatar Nov 14 '15 20:11 rom1504

What about a flag that indicates if a block has related Block Entity Data?

Gjum avatar Jan 29 '16 01:01 Gjum

Whether or not a pickaxe can break a block would be nice data. Currently I have it stored in a big list and it's super ugly. Gamepedia has some data on it, though I think the hardness is already in minecraft_data. Really I'm just looking for a way to condense this:

    @Getter private static final List<String> level0Stones = Arrays
            .asList(new String[] { "stone", "cobblestone", "double_stone_slab", "stone_slab", "mossy_cobblestone",
                    "stone_stairs", "monster_egg", "cobblestone_wall", "sandstone", "stone_pressure_plate", "glowstone",
                    "stonebrick", "stone_brick_stairs", "sandstone_stairs", "cobblestone_wall", "redstone_block",
                    "quartz_block", "red_sandstone", "red_sandstone_stairs", "double_stone_slab2", "stone_slab2" });

    @Getter private static final List<String> level1Stones = Arrays
            .asList(new String[] { "iron_ore", "iron_block", "lapis_ore", "lapis_block" });

    @Getter private static final List<String> level2Stones = Arrays.asList(new String[] { "diamond_ore",
            "diamond_block", "gold_ore", "gold_block", "redstone_ore", "lit_redstone_ore" });

    @Getter private static final List<String> level3Stones = Arrays.asList(new String[] { "obsidian" });

    @Getter private static final List<String> level0Picks = Arrays.asList(
            new String[] { "wood_pickaxe", "gold_pickaxe", "stone_pickaxe", "iron_pickaxe", "diamond_pickaxe" });

    @Getter private static final List<String> level1Picks = Arrays
            .asList(new String[] { "stone_pickaxe", "iron_pickaxe", "diamond_pickaxe" });

    @Getter private static final List<String> level2Picks = Arrays
            .asList(new String[] { "iron_pickaxe", "diamond_pickaxe" });

    @Getter private static final List<String> level3Picks = Arrays.asList(new String[] { "diamond_pickaxe" });

This has each stone (or stonelike block) organized by "pick level". Each pick level contains what picks can break the blocks in that level. Putting this kind of data in minecraft_data would help everyone (or maybe just me) a lot.

phase avatar Feb 20 '16 21:02 phase

@phase there is the harvestTools field, maybe that combined with the hardness is enough to determine the tool for you.

Example:

{
    "id": 1,
    "displayName": "Stone",
    "name": "stone",
    "hardness": 1.5,
    "harvestTools": {
      "257": true,
      "270": true,
      "274": true,
      "278": true,
      "285": true
    },
    "...": "..."
},

Gjum avatar Feb 20 '16 22:02 Gjum

harvestTools no appears in dirt, is it a bug? image

sefirosweb avatar Jan 16 '21 21:01 sefirosweb

No.

harvestTools is not a required field for blocks

nickelpro avatar Jan 16 '21 21:01 nickelpro