export const airBlocks = ["minecraft:air", "minecraft:fern", "minecraft:large_fern", "minecraft:short_grass", "minecraft:tall_grass", "minecraft:nether_sprouts", "minecraft:crimson_roots", "minecraft:warped_roots", "minecraft:snow_layer", "minecraft:vine", "minecraft:water"];
export const colors = [ "white", "light_gray",  "gray", "black", "brown", "red", "orange", "yellow", "lime", "green", "cyan", "light_blue", "blue", "purple", "magenta", "pink" ];
export const solidBlocks = ["block", "_planks", "fence", "bamboo_mosaic", "glass", "bars", "brick", "blackstone", "deepslate", "stone", "copper", "quartz", "prismarine", "wool", "slime", "concrete", "clay", "terracotta", "mud", "table", "beehive", "furnace", "smoker", "respawn", "book", "composter", "barrel", "sea_lantern", "jukebox", "beacon", "dispenser", "dropper", "observer", "piston", "loom", "target", "shroomlight", "nylium", "netherrack", "basalt", "soul_sand", "soul_soil", "dirt", "ore", "gravel", "ancient_debris", "podzol", "mycelium", "granite", "diorite", "andesite", "sand", "log", "wood", "stem", "hyphae", "leaves", "pumpkin", "snow", "ice", "tuff", "froglight", "obsidian", "sponge", "bedrock"];
export const blockException = ["_stairs", "slab", "wall", "door", "grindstone", "enchanting_table", "stonecutter_block", "torch", "heavy_core", "button", "pressure_plate", "melon_stem", "pumpkin_stem", "layer", "pointed_dripstone", "spore_blossom", "light_block"];
export const solidBlock = new Set([
	"minecraft:oak_planks", "minecraft:spruce_planks", "minecraft:birch_planks", "minecraft:jungle_planks", "minecraft:acacia_planks", "minecraft:dark_oak_planks", "minecraft:mangrove_planks", "minecraft:cherry_planks", "minecraft:pale_oak_planks", "minecraft:bamboo_planks", "minecraft:bamboo_mosaic", "minecraft:crimson_planks", "minecraft:warped_planks",
	"minecraft:glass", "minecraft:white_stained_glass", "minecraft:light_gray_stained_glass", "minecraft:gray_stained_glass", "minecraft:black_stained_glass", "minecraft:brown_stained_glass", "minecraft:red_stained_glass", "minecraft:orange_stained_glass", "minecraft:yellow_stained_glass", "minecraft:lime_stained_glass", "minecraft:green_stained_glass", "minecraft:cyan_stained_glass", "minecraft:light_blue_stained_glass", "minecraft:blue_stained_glass", "minecraft:purple_stained_glass", "minecraft:magenta_stained_glass", "minecraft:pink_stained_glass", "minecraft:tinted_glass",
	"minecraft:brick_block", "minecraft:double_cut_copper_slab", "minecraft:acacia_double_slab", "minecraft:andesite_double_slab", "minecraft:bamboo_double_slab", "minecraft:bamboo_mosaic_double_slab", "minecraft:birch_double_slab", "minecraft:blackstone_double_slab", "minecraft:brick_double_slab", "minecraft:cherry_double_slab", "minecraft:cobbled_deepslate_double_slab", "minecraft:cobblestone_double_slab", "minecraft:crimson_double_slab", "minecraft:cut_red_sandstone_double_slab", "minecraft:cut_sandstone_double_slab", "minecraft:dark_oak_double_slab", "minecraft:dark_prismarine_double_slab", "minecraft:deepslate_brick_double_slab", "minecraft:deepslate_tile_double_slab", "minecraft:diorite_double_slab", "minecraft:end_stone_brick_double_slab", "minecraft:exposed_double_cut_copper_slab", "minecraft:granite_double_slab", "minecraft:jungle_double_slab", "minecraft:mangrove_double_slab", "minecraft:mossy_cobblestone_double_slab", "minecraft:mossy_stone_brick_double_slab", "minecraft:mud_brick_double_slab", "minecraft:nether_brick_double_slab", "minecraft:normal_stone_double_slab", "minecraft:oak_double_slab", "minecraft:oxidized_double_cut_copper_slab", "minecraft:pale_oak_double_slab", "minecraft:petrified_oak_double_slab", "minecraft:polished_andesite_double_slab", "minecraft:polished_blackstone_brick_double_slab", "minecraft:polished_blackstone_double_slab", "minecraft:polished_deepslate_double_slab", "minecraft:polished_diorite_double_slab", "minecraft:polished_granite_double_slab", "minecraft:polished_tuff_double_slab", "minecraft:prismarine_brick_double_slab", "minecraft:prismarine_double_slab", "minecraft:purpur_double_slab", "minecraft:quartz_double_slab", "minecraft:red_nether_brick_double_slab", "minecraft:red_sandstone_double_slab", "minecraft:resin_brick_double_slab", "minecraft:sandstone_double_slab", "minecraft:smooth_quartz_double_slab", "minecraft:smooth_red_sandstone_double_slab", "minecraft:smooth_sandstone_double_slab", "minecraft:smooth_stone_double_slab", "minecraft:spruce_double_slab", "minecraft:stone_brick_double_slab", "minecraft:tuff_brick_double_slab", "minecraft:tuff_double_slab", "minecraft:warped_double_slab", "minecraft:waxed_double_cut_copper_slab", "minecraft:waxed_exposed_double_cut_copper_slab", "minecraft:waxed_oxidized_double_cut_copper_slab", "minecraft:waxed_weathered_double_cut_copper_slab", "minecraft:weathered_cut_copper_slab",
	"minecraft:stone_bricks", "minecraft:mossy_stone_bricks", "minecraft:cracked_stone_bricks", "minecraft:chiseled_stone_bricks", "minecraft:smooth_stone", "minecraft:end_bricks", "minecraft:polished_blackstone_bricks", "minecraft:cracked_polished_blackstone_bricks", "minecraft:gilded_blackstone", "minecraft:chiseled_polished_blackstone", "minecraft:deepslate_tiles", "minecraft:cracked_deepslate_tiles", "minecraft:deepslate_bricks", "minecraft:cracked_deepslate_bricks", "minecraft:chiseled_deepslate", "minecraft:tuff_bricks", "minecraft:chiseled_tuff", "minecraft:chiseled_tuff_bricks", "minecraft:cobblestone", "minecraft:mossy_cobblestone", "minecraft:cobbled_deepslate", "minecraft:sandstone", "minecraft:chiseled_sandstone", "minecraft:cut_sandstone", "minecraft:smooth_sandstone", "minecraft:red_sandstone", "minecraft:chiseled_red_sandstone", "minecraft:cut_red_sandstone", "minecraft:smooth_red_sandstone", "minecraft:coal_block", "minecraft:dried_kelp_block", "minecraft:copper_block", "minecraft:exposed_copper", "minecraft:weathered_copper", "minecraft:oxidized_copper", "minecraft:waxed_copper", "minecraft:waxed_exposed_copper", "minecraft:waxed_weathered_copper", "minecraft:waxed_oxidized_copper", "minecraft:copper_grate", "minecraft:exposed_copper_grate", "minecraft:weathered_copper_grate", "minecraft:oxidized_copper_grate", "minecraft:waxed_copper_grate", "minecraft:waxed_exposed_copper_grate", "minecraft:waxed_weathered_copper_grate", "minecraft:waxed_oxidized_copper_grate", "minecraft:cut_copper", "minecraft:exposed_cut_copper", "minecraft:weathered_cut_copper", "minecraft:oxidized_cut_copper", "minecraft:waxed_cut_copper", "minecraft:waxed_exposed_cut_copper", "minecraft:waxed_weathered_cut_copper", "minecraft:waxed_oxidized_cut_copper", "minecraft:chiseled_copper", "minecraft:exposed_chiseled_copper", "minecraft:weathered_chiseled_copper", "minecraft:oxidized_chiseled_copper", "minecraft:waxed_chiseled_copper", "minecraft:waxed_exposed_chiseled_copper", "minecraft:waxed_weathered_chiseled_copper", "minecraft:waxed_oxidized_chiseled_copper", "minecraft:copped_bulb", "minecraft:exposed_copper_bulb", "minecraft:weathered_copper_bulb", "minecraft:oxidized_copper_bulb", "minecraft:waxed_copped_bulb", "minecraft:waxed_exposed_copper_bulb", "minecraft:waxed_weathered_copper_bulb", "minecraft:waxed_oxidized_copper_bulb",
	"minecraft:iron_block", "minecraft:gold_block", "minecraft:emerald_block", "minecraft:diamond_block", "minecraft:lapis_block", "minecraft:raw_copper_block", "minecraft:raw_iron_block", "minecraft:raw_gold_block", "minecraft:quartz_block", "minecraft:quartz_bricks", "minecraft:quartz_pillar", "minecraft:chiseled_quartz_block", "minecraft:smooth_quartz", "minecraft:prismarine", "minecraft:prismarine_bricks", "minecraft:dark_prismarine", "minecraft:slime", "minecraft:honey_block", "minecraft:honeycomb_block", "minecraft:resin_block", "minecraft:resin_bricks", "minecraft:chiseled_resin_bricks", "minecraft:hay_block", "minecraft:bone_block", "minecraft:nether_brick", "minecraft:chiseled_nether_bricks", "minecraft:cracked_nether_bricks", "minecraft:red_nether_brick", "minecraft:netherite_block", "minecraft:lodestone", "minecraft:white_wool", "minecraft:light_gray_wool", "minecraft:gray_wool", "minecraft:black_wool", "minecraft:brown_wool", "minecraft:red_wool", "minecraft:orange_wool", "minecraft:yellow_wool", "minecraft:lime_wool", "minecraft:green_wool", "minecraft:cyan_wool", "minecraft:light_blue_wool", "minecraft:blue_wool", "minecraft:purple_wool", "minecraft:magenta_wool", "minecraft:pink_wool", "minecraft:white_concrete_powder", "minecraft:light_gray_concrete_powder", "minecraft:gray_concrete_powder", "minecraft:black_concrete_powder", "minecraft:brown_concrete_powder", "minecraft:red_concrete_powder", "minecraft:orange_concrete_powder", "minecraft:yellow_concrete_powder", "minecraft:lime_concrete_powder", "minecraft:green_concrete_powder", "minecraft:cyan_concrete_powder", "minecraft:light_blue_concrete_powder", "minecraft:blue_concrete_powder", "minecraft:purple_concrete_powder", "minecraft:magenta_concrete_powder", "minecraft:pink_concrete_powder", "minecraft:white_concrete", "minecraft:light_gray_concrete", "minecraft:gray_concrete", "minecraft:black_concrete", "minecraft:brown_concrete", "minecraft:red_concrete", "minecraft:orange_concrete", "minecraft:yellow_concrete", "minecraft:lime_concrete", "minecraft:green_concrete", "minecraft:cyan_concrete", "minecraft:light_blue_concrete", "minecraft:blue_concrete", "minecraft:purple_concrete", "minecraft:magenta_concrete", "minecraft:pink_concrete",
	"minecraft:hardened_clay", "minecraft:white_terracotta", "minecraft:light_gray_terracotta", "minecraft:gray_terracotta", "minecraft:black_terracotta", "minecraft:brown_terracotta", "minecraft:red_terracotta", "minecraft:orange_terracotta", "minecraft:yellow_terracotta", "minecraft:lime_terracotta", "minecraft:green_terracotta", "minecraft:cyan_terracotta", "minecraft:light_blue_terracotta", "minecraft:blue_terracotta", "minecraft:purple_terracotta", "minecraft:magenta_terracotta", "minecraft:pink_terracotta", "minecraft:white_glazed_terracotta", "minecraft:silver_glazed_terracotta", "minecraft:gray_glazed_terracotta", "minecraft:black_glazed_terracotta", "minecraft:brown_glazed_terracotta", "minecraft:red_glazed_terracotta", "minecraft:orange_glazed_terracotta", "minecraft:yellow_glazed_terracotta", "minecraft:lime_glazed_terracotta", "minecraft:green_glazed_terracotta", "minecraft:cyan_glazed_terracotta", "minecraft:light_blue_glazed_terracotta", "minecraft:blue_glazed_terracotta", "minecraft:purple_glazed_terracotta", "minecraft:magenta_glazed_terracotta", "minecraft:pink_glazed_terracotta",
	"minecraft:purpur_block", "minecraft:purpur_pillar", "minecraft:packed_mud", "minecraft:mud_bricks", "minecraft:crafting_table", "minecraft:cartography_table", "minecraft:fletching_table", "minecraft:smithing_table", "minecraft:beehive", "minecraft:suspicious_sand", "minecraft:suspicious_gravel", "minecraft:furnace", "minecraft:blast_furnace", "minecraft:lit_furnace", "minecraft:lit_blast_furnace", "minecraft:smoker", "minecraft:lit_smoker", "minecraft:respawn_anchor", "minecraft:bookshelf", "minecraft:chiseled_bookshelf", "minecraft:composter", "minecraft:barrel", "minecraft:noteblock", "minecraft:jukebox", "minecraft:sea_lantern", "minecraft:redstone_lamp", "minecraft:lit_redstone_lamp", "minecraft:beacon", "minecraft:glowstone", "minecraft:redstone_block", "minecraft:observer", "minecraft:dropper", "minecraft:dispenser", "minecraft:crafter", "minecraft:piston", "minecraft:sticky_piston", "minecraft:loom", "minecraft:target", "minecraft:nether_wart_block", "minecraft:warped_wart_block", "minecraft:shroomlight", "minecraft:crimson_nylium", "minecraft:warped_nylium", "minecraft:netherrack", "minecraft:soul_soil", "minecraft:grass_block", "minecraft:podzol", "minecraft:mycelium", "minecraft:dirt", "minecraft:coarse_dirt", "minecraft:dirt_with_roots", "minecraft:mud", "minecraft:clay", "minecraft:coal_ore", "minecraft:copper_ore", "minecraft:diamond_ore", "minecraft:emerald_ore", "minecraft:gold_ore", "minecraft:iron_ore", "minecraft:lapis_ore", "minecraft:lit_redstone_ore", "minecraft:deepslate_coal_ore", "minecraft:deepslate_copper_ore", "minecraft:deepslate_diamond_ore", "minecraft:deepslate_emerald_ore", "minecraft:deepslate_gold_ore", "minecraft:deepslate_iron_ore", "minecraft:deepslate_lapis_ore", "minecraft:deepslate_redstone_ore", "minecraft:lit_deepslate_redstone_ore", "minecraft:redstone_ore", "minecraft:quartz_ore", "minecraft:nether_gold_ore", "minecraft:ancient_debris",
	"minecraft:stone", "minecraft:granite", "minecraft:diorite", "minecraft:andesite", "minecraft:blackstone", "minecraft:deepslate", "minecraft:tuff", "minecraft:basalt", "minecraft:polished_granite", "minecraft:polished_diorite", "minecraft:polished_andesite", "minecraft:polished_blackstone", "minecraft:polished_deepslate", "minecraft:polished_tuff", "minecraft:polished_basalt", "minecraft:smooth_basalt", "minecraft:gravel", "minecraft:sand", "minecraft:red_sand", "minecraft:acacia_log", "minecraft:birch_log", "minecraft:cherry_log", "minecraft:dark_oak_log", "minecraft:jungle_log", "minecraft:mangrove_log", "minecraft:oak_log", "minecraft:pale_oak_log", "minecraft:spruce_log", "minecraft:crimson_stem", "minecraft:warped_stem", "minecraft:stripped_acacia_log", "minecraft:stripped_birch_log", "minecraft:stripped_cherry_log", "minecraft:stripped_dark_oak_log", "minecraft:stripped_jungle_log", "minecraft:stripped_mangrove_log", "minecraft:stripped_oak_log", "minecraft:stripped_pale_oak_log", "minecraft:stripped_spruce_log", "minecraft:stripped_crimson_stem", "minecraft:stripped_warped_stem", "minecraft:acacia_wood", "minecraft:birch_wood", "minecraft:cherry_wood", "minecraft:dark_oak_wood", "minecraft:jungle_wood", "minecraft:mangrove_wood", "minecraft:oak_wood", "minecraft:pale_oak_wood", "minecraft:spruce_wood", "minecraft:crimson_hyphae", "minecraft:warped_hyphae", "minecraft:stripped_acacia_wood", "minecraft:stripped_birch_wood", "minecraft:stripped_cherry_wood", "minecraft:stripped_dark_oak_wood", "minecraft:stripped_jungle_wood", "minecraft:stripped_mangrove_wood", "minecraft:stripped_oak_wood", "minecraft:stripped_pale_oak_wood", "minecraft:stripped_spruce_wood", "minecraft:stripped_crimson_hyphae", "minecraft:stripped_warped_hyphae",
	"minecraft:bee_nest", "minecraft:snow", "minecraft:ice", "minecraft:blue_ice", "minecraft:frosted_ice", "minecraft:packed_ice", "minecraft:dripstone_block", "minecraft:moss_block", "minecraft:pale_moss_block", "minecraft:mangrove_roots", "minecraft:muddy_mangrove_roots", "minecraft:amethyst_block", "minecraft:budding_amethyst", "minecraft:calcite", "minecraft:mob_spawner", "minecraft:trial_spawner", "minecraft:vault", "minecraft:creaking_heart", "minecraft:ochre_froglight", "minecraft:pearlescent_froglight", "minecraft:verdant_froglight", "minecraft:infested_chiseled_stone_bricks", "minecraft:infested_cobblestone", "minecraft:infested_cracked_stone_bricks", "minecraft:infested_deepslate", "minecraft:infested_mossy_stone_bricks", "minecraft:infested_stone", "minecraft:infested_stone_bricks", "minecraft:obsidian", "minecraft:crying_obsidian", "minecraft:bedrock", "minecraft:soul_sand", "minecraft:magma", "minecraft:end_stone", "minecraft:sponge", "minecraft:wet_sponge", "minecraft:brain_coral_block", "minecraft:bubble_coral_block", "minecraft:fire_coral_block", "minecraft:horn_coral_block", "minecraft:tube_coral_block", "minecraft:dead_brain_coral_block", "minecraft:dead_bubble_coral_block", "minecraft:dead_fire_coral_block", "minecraft:dead_horn_coral_block", "minecraft:dead_tube_coral_block", "minecraft:sculk", "minecraft:sculk_catalyst", "minecraft:reinforced_deepslate",
    "minecraft:fence_gate", "minecraft:acacia_fence_gate", "minecraft:birch_fence_gate", "minecraft:bamboo_fence_gate", "minecraft:cherry_fence_gate", "minecraft:crimson_fence_gate", "minecraft:dark_oak_fence_gate", "minecraft:jungle_fence_gate", "minecraft:mangrove_fence_gate", "minecraft:pale_oak_fence_gate", "minecraft:spruce_fence_gate", "minecraft:warped_fence_gate",
    "minecraft:oak_fence", "minecraft:acacia_fence", "minecraft:birch_fence", "minecraft:bamboo_fence", "minecraft:cherry_fence", "minecraft:crimson_fence", "minecraft:dark_oak_fence", "minecraft:jungle_fence", "minecraft:mangrove_fence", "minecraft:pale_oak_fence", "minecraft:spruce_fence", "minecraft:warped_fence",
	"minecraft:acacia_leaves", "minecraft:azalea_leaves", "minecraft:azalea_leaves_flowered", "minecraft:birch_leaves", "minecraft:cherry_leaves", "minecraft:dark_oak_leaves", "minecraft:jungle_leaves", "minecraft:mangrove_leaves", "minecraft:oak_leaves", "minecraft:pale_oak_leaves", "minecraft:spruce_leaves"
]);
export const directionState = "minecraft:cardinal_direction";
export const rightBlockLocation = {
	"north": { x: -1, y: 0, z: 0 },
	"south": { x: 1, y: 0, z: 0 },
	"west": { x: 0, y: 0, z: 1 },
	"east": { x: 0, y: 0, z: -1 }
};
export const leftBlockLocation = {
	"north": { x: 1, y: 0, z: 0 },
	"south": { x: -1, y: 0, z: 0 },
	"west": { x: 0, y: 0, z: -1 },
	"east": { x: 0, y: 0, z: 1 }
};
export const frontBlockLocation = {
	"north": { x: 0, y: 0, z: -1 },
	"south": { x: 0, y: 0, z: 1 },
	"west": { x: -1, y: 0, z: 0 },
	"east": { x: 1, y: 0, z: 0 }
};
export const backBlockLocation = {
	"north": { x: 0, y: 0, z: 1 },
	"south": { x: 0, y: 0, z: -1 },
	"west": { x: 1, y: 0, z: 0 },
	"east": { x: -1, y: 0, z: 0 }
};
export const directions = {
	north: { x: 0, y: 0, z: -1, opposite: "south" },
	south: { x: 0, y: 0, z: 1, opposite: "north" },
	west: { x: -1, y: 0, z: 0, opposite: "east" },
	east: { x: 1, y: 0, z: 0, opposite: "west" }
};
export const oppositeDirection = {
	north: "south",
	south: "north",
	west: "east",
	east:  "west"
};
export function getRightBlock(block, direction) {
	return block.offset(rightBlockLocation[direction]);
}
export function getLeftBlock(block, direction) {
	return block.offset(leftBlockLocation[direction]);
}
export function getBackBlock(block, direction) {
	return block.offset(backBlockLocation[direction]);
}
export function getFrontBlock(block, direction) {
	return block.offset(frontBlockLocation[direction]);
}